XML Hacking - Vertical Bullet Alignment

Bad design decisions haunt our lives. One poor choice was Microsoft's selection of the text baseline for vertical bullet alignment in PowerPoint. Bigger bullets move up, smaller bullets move down, without any control in the user interface. I'm sure you've seen this effect as you change bullet size relative to text:

Bad Vertical Bullet Alignment


Fixing Vertical Bullet Alignment with VBA

There are a couple of ways to fix this issue. One is to download and install this free Add-in by John S.R. Wilson of PowerPoint Alchemy: Bullets Move Up and Down. The VBA code behind this add-in looks something like this:

Sub fixBulletAlignment()
  Dim oDes As Design
  Dim oMast As Master
  Dim L As Long
  Dim oCust As CustomLayout
  Dim oshp As Shape
  For Each oDes In ActivePresentation.Designs
    For Each oCust In oDes.SlideMaster.CustomLayouts
      For Each oshp In oCust.Shapes
        If oshp.Type = msoPlaceholder Then
          Select Case oshp.PlaceholderFormat.Type
          Case Is = ppPlaceholderBody, ppPlaceholderVerticalBody, ppPlaceholderObject
            For L = 1 To oshp.TextFrame.TextRange.Paragraphs.Count
              With oshp.TextFrame.TextRange.Paragraphs(L).ParagraphFormat
              .BaseLineAlignment = ppBaselineAlignCenter
              End With
            Next L
          End Select
        End If
      Next oshp
    Next oCust
  Next oDes
  MsgBox "Masters and layouts fixed", vbInformation, "PowerPoint Alchemy"
End Sub

When this runs, it adds an over-ride to the text level definitions on each slide layout that has multi-level text (any layout containing a Content or Text placeholder).

<a:lstStyle>
  <a:lvl1pPr fontAlgn="ctr">
    <a:defRPr/>
  </a:lvl1pPr>
  <a:lvl2pPr fontAlgn="ctr">
    <a:defRPr/>
  </a:lvl2pPr>
  <a:lvl3pPr fontAlgn="ctr">
    <a:defRPr/>
  </a:lvl3pPr>
  <a:lvl4pPr fontAlgn="ctr">
    <a:defRPr/>
  </a:lvl4pPr>
  <a:lvl5pPr fontAlgn="ctr">
    <a:defRPr/>
  </a:lvl5pPr>
</a:lstStyle>

This is adequate for most purposes. With correctly aligned bullets, we now get this effect when we change the bullet size:

Good Vertical Bullet Alignment

There are a couple of downsides to the VBA approach:

  • You have to remember to apply it to each presentation or template.
  • If you add a new layout, or add a new text or content placeholder to an existing layout, you'll have to re-run the macro.
  • Table text and text box text does not benefit, their bullets will still be wonky.

Fixing Vertical Bullet Alignment with XML Hacking

With XML hacking, we can fix this problem once and never have to think about it again. Start by unzipping a new blank template, then editing ppt\slideMasters\slideMaster1.xml. There are 3 sections to be edited: p:titleStyle (for all title placeholders), p:bodyStyle (for all text or content placeholders) and p:otherStyle (for table text).

The editing is the same for all sections: for each a:lvlXpPr section, where X is the level number, add fontAlgn="ctr" to the definition. Here's what it looks like before...

<a:lvl1pPr marL="0" indent="0" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1">

...and after editing:

<a:lvl1pPr fontAlgn="ctr" marL="0" indent="0" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1">

There are 19 level definitions in slideMaster1.xml to change. When you're done that, open ppt\presentation.xml and make the same edit to the 9 levels of the p:defaultTextStyle section that controls formatting for text boxes and notes and handout pages.

When you're done, rezip the XML files and rename the template blank.potx. Place it so it works as your default template, here's an article from Steve Rindsberg with the details for each Office version. For PowerPoint 2016 and 2019 for Windows, follow the PowerPoint 2013 directions. For 2019 for Mac, use the Mac 2016 directions: Create your own default presentation.

Now that this is set in your default template, every new file created when PowerPoint opens will have the correct vertical bullet alignment. Please note that in PowerPoint for Windows, if you choose File>New>Blank Presentation, this autogenerates a new file that is not based on your default template. Such a file will have incorrect vertical bullet alignment.

Shared Workgroup Templates - Brandwares Best Practices

Groups of workers usually use the same templates. But it can be time-consuming to keep everyone updated when templates are installed separately on each desktop. Instead, you can implement shared workgroup templates with a feature already built into Office.


Shared Workgroup Templates - Multiple Uses

Every desktop version of Office, Mac and Windows, includes a Workgroup templates option that allows you to set a network share as a templates folder. Templates on this share are instantly available to all users, making updates and revisions a breeze. Automatically, everyone in the office is using the same version. As long as template names remain identical, then old Word documents automatically attach themselves to the new template.

The Workgroup templates network share can serve more that just templates. With some additional subfolders, it can be a source for Document Themes, including custom SuperThemes, it can hold collection of Font and Color themes. These additional files don't show in the File>New dialog. Theme files display under the Themes dropdown, theme colors under the Colors dropdown and theme fonts under the Fonts dropdown.


Shared Workgroup Templates - Setup

To set up shared workgroup templates, first create the network location and ensure it's accessible to all in the office without a signin. Each computer should connect to the share automatically on restart, so users don't have to remember to manually connect before creating a new document. Create subfolders with the following names for othe file types you want to support. Document Themes for themes, with subfolders for Theme Colors and Theme Fonts. All versions of Office expect exactly the same file structure.

If the office uses Group Policies to install and configure software, you can use that feature to add the Workgroup Template location to each user installation. If you're using "sneakernet" for configuration, here's how to do it manually. All Office suites use a setting in Word to set the location for all the other programs

Office 2010, 2013, 2016 and 2019 for Windows

  1. In Word, choose File>Options>Advanced.
  2. Scroll down to the General section of Advanced and click on the File Locations... button.
  3. Select the Workgroup templates line, then click on the Modify button.
  4. In the dialog that opens, enter the path to the network share in the Folder name field, or use the window controls to navigate to the folder. Select the folder and click on OK. OK all the way out and close Word

Office 2007 for Windows

  1. In Word, click on the Office button, then on Word Options, then on Advanced..
  2. Scroll down to the General section of Advanced and click on the File Locations... button.
  3. Select the Workgroup templates line, then click on the Modify button.
  4. In the dialog that opens, enter the path to the network share in the Folder name field, or use the window controls to navigate to the folder. Select the folder and click on OK. OK all the way out and close Word.

Office 2003 and earlier for Windows

  1. In Word, choose Tools>Options and click on the File Locations tab.
  2. Select the Workgroup templates line, then click on the Modify button.
  3. In the dialog that opens, enter the path to the network share in the Folder name field, or use the window controls to navigate to the folder. Select the folder and click on OK. OK all the way out and close Word.

Office 2016 and 2019 for Mac

  1. In Word, choose Word>Preferences>File Locations.
  2. Select the Workgroup templates line, then click on the Modify button.
  3. In the dialog that opens, use the window controls to navigate to the folder. Select the folder and click on Open. OK out and close Word

Office 2011 and earlier for Mac

  1. In Word, choose Word>Preferences>File Locations.
  2. Select the Workgroup templates line, then click on the Modify button.
  3. In the dialog that opens, use the window controls to navigate to the folder. Select the folder and click on Choose. OK out and close Word

Shared Workgroup Templates in Use

Here's how to access Workgroup templates in Office programs

Office 2016 and 2019 for Windows

  1. Choose File>New.
  2. Click on Custom.
  3. Click on Workgroup Templates, select a template, then click on Create.

Office 2013 for Windows

  1. Choose FILE>New.
  2. Click on SHARED.
  3. Click on a template.

Office 2010 for Windows

  1. Choose File>New>My Templates.
  2. On the Personal Templates tab, select a template, then click on OK. This tab also shows local templates on the user's computer.

Office 2007 for Windows

  1. Click on the Office button, then on New.
  2. Click on My templates...
  3. Select the My Templates tab. Workgroup templates are displayed along with local templates in the same pane.

Office 2003 and earlier for Windows

  1. Click on File>New. The New Document pane opens at the side of the window.
  2. On the New Document pane, click on On my computer...
  3. Select a template from the General pane and click on OK. This pane shows a mix of local and workgroup templates.

Office 2016 and 2019 for Mac

  1. Choose File>New from Template.... The Document Gallery opens
  2. In the upper left corner, click on the Work link. This link only appears when you have a Workgroup Templates location set in Preferences.
  3. Select a template, then click on Create.

Office 2011 for Mac

  1. Choose File>New from Template. The Document Gallery opens.
  2. Click on Workgroup Templates in the left-hand TEMPLATES list..
  3. Select a template and click on Choose.

Office 2008 for Mac

  1. Choose File>Project Gallery. The Project Gallery opens.
  2. Click on My Templates in the left-hand Category list..
  3. Select a template and click on Open. This window will show a mix of Workgroup and local templates.

Shared Workgroup Templates - Shortcomings

In addition to templates and themes, a local templates folder also serves custom Chart and SmartArt templates. Neither of these formats is supported by Workgroup Templates, so those templates must still be installed locally on each user's computer.

XML Hacking - Layout Color Variations for Visual Interest

Having worked with many great designers, I see that they try to create variety in chart appearance rather than uniformity. So what if there was a way to have make a chart layout with the colors in a different order? This could give you layout color variations while sticking to the branding guidelines. Well, I have a solution for you, but you're gonna have to hack some XML!

If you're an XML newby, please read my article XML Hacking: An Introduction. macOS users will live longer lives if they take a look at XML Hacking: Editing in macOS.

Normally, every layout under a slide master has only 1 color theme. You're mostly stuck with those 10 colors in a fixed order. In my earlier article about Great Color Themes, I explained how the sequence of colors determines the color order of charts.

But during some recent research, I started reading about the <p:clrMapOvr> XML element. This can be applied to a slide layout to rearrange the color theme. With Accents 1 to 6 in a different order, charts can acquire a whole new look. Here's how it works.


Layout Color Variations with clrMapOvr

Before Layout Color Variations

At the end of most layouts, you may have seen this XML:

  <p:clrMapOvr>
    <a:masterClrMapping/>
  </p:clrMapOvr>

This tells the layout that it should use the standard color mapping as defined in the theme. We would think of this as the default or normal set of colors. But what if we want to alter this sequence? We can assign each color theme value to a different task. If you import a PowerPoint 2003 or older deck, this gets generated automatically to keep the deck looking as expected.

Here's an alternate mapping of the same colors:

  <p:clrMapOvr>
    <a:overrideClrMapping bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2" accent1="accent6" accent2="accent5" accent3="accent4" accent4="accent3" accent5="accent2" accent6="accent1" hlink="hlink" folHlink="folHlink"/>
  </p:clrMapOvr>

This reverses the order of accent colors from the master, giving charts, fills and shapes a whole new look for the slides based on this layout.

After Layout Color Variations

We used to tell clients "Sorry, we have to set the color order to match only one of your designed charts." Now we have a different message: "Different chart color sequences? No problem. Just use a different layout!"

If XML hacking doesn't interest you, Brandwares can do it for you. We're a full-service template creation service for all Office programs. Email me at production@brandwares.com with your project details.

Legacy Slides - Brandwares Best Practices

To be honest, I've never met a designer who, on their own, gave a moment's consideration to designing the latest corporate template so it could handle all the presentations that the client already has. It just doesn't seem to be part of today's design esthetic to consider anything but the today and the future.

That's not how your client sees it. For rapid production of new presentations, the last thing they want it to have to re-invent their presentations every time the brand is overhauled. It's far more efficient to reuse slides that already tell the story. But to reuse those slides easily, the designer must be an integral part of the process.


Legacy Slides - Everything You Know is Wrong

Despite the hyperbole of my headline borrowed from Firesign Theater (look it up, youngsters!), most designers create presentation template incorrectly, for the purpose of importing of legacy slides. Almost universal infractions include deleting or renaming the default slide layouts, and deleting or adding placeholders on whatever default slide layouts are left. Less common methods that designers use to wreck templates include deleting all placeholders on the master slide, and deleting all default layouts, then trying to replace them

To understand why these actions could cause problems, we need to understand the PowerPoint file structure. All new blank PowerPoint files contain the following:

  • 1 Master Slide (in Slide Master view, the larger slide at the top). The parent to all the layouts, to which the slide layouts are children.
  • 11 default slide layouts, which inherit the formatting set in the master slide. These 11 comprise:
  • Title Slide, for the presentation title.
  • Title and Content, for the bulk of the presentation content.
  • Section Header, to divide the deck into relevant sections.
  • Two Content, with 2 content areas.
  • Comparison, similar to Two Content, but each content area also has a corresponding heading placeholder.
  • Title Only, displaying only a Title field, with the rest of the slide blank.
  • Blank, with not even a Title field.
  • Content with Caption, a little-used layout the includes a Title, Text and Content placeholder.
  • Picture with Caption, similar to Content with Caption, but with a Picture placeholder replacing the Content one.
  • Title and Vertical Text This layout is intended for Asian language use and is only displayed as a choice if your operating system has an Asian language set up.
  • Vertical Title and Text Similar to the previous layout, only available on computers with Asian language input enabled in the operating system.
Mandatory default layouts (Asian-language-enabled system).
Legacy Slides Default Layouts

Each of these layouts has a specific layout type, set in XML and not alterable in the program interface. You can create the correct placeholder types by generating a new, blank PowerPoint file. Each of these layouts contains placeholders for the date and slide number, plus a footer field. All but 1 have a title placeholder.

Here's the second line of a default layout. In this example, obj is the XML type for a Title and Content layout:

<p:sldLayout xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"
xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"
type="obj" preserve="1">

If a slide layout has been created by the user from the Insert Layout command, that layout will not have a type. Instead, the second line of the XML will include userDrawn="1"

If you have deleted a default slide layout, you can restore it by creating a new blank presentation, then copying and pasting the layout under the slide master of the deck to be repaired. You can also restore a default layout by running this VBA:

Sub RestoreLayout()
  Dim oSl As Slide
  Count% = ActivePresentation.Slides.Count
  Set oSl = ActivePresentation.Slides.Add(Index:=(Count% + 1), Layout:=ppLayoutObject)
  oSl.Delete
  Set oSl = Nothing
End Sub

The example above restores a deleted Title and Content layout. Just change ppLayoutObject to the type you need from this list:

Layout Type VBA Parameter
Title Slide ppLayoutTitle
Title and Content ppLayoutObject
Section Header ppLayoutSectionHeader
Two Content ppLayoutTwoObjects
Comparison ppLayoutComparison
Title Only ppLayoutTitleOnly
Blank ppLayoutBlank
Content with Caption ppLayoutContentWithCaption
Picture with Caption ppLayoutPictureWithCaption
Title and Vertical Text ppLayoutVerticalText
Vertical Title and Text ppLayoutVerticalTitleAndText

Legacy Slides - What Actually Works

PowerPoint, like most programs, is bonehead stupid. When you paste in old slides, and you want them to map to your new slide layouts, they must meet all of these criteria:

  • The slide layout name must be the same.
  • The slide layout type (as set in XML) must be the same. If you copy an existing Title Slide layout, it will retain the layout type. But if you delete all Title Slide layouts, then realize you made a mistake, you are hosed. It should be possible to recreate a layout with it's XML type using VBA, I'll post that when I code it.
  • The number of placeholders must be the same. When there is a different number of placeholders on the slide being pasted, PowerPoint goes mental and will reassign content randomly.
  • The types of placeholders must be the same. If a user is pasting a Title and Content slide, PowerPoint is looking for:
    1 Title,
    1 Content,
    1 Date,
    1 Footer and
    1 Page Number placeholder. No more, no less.
  • For corresponding placeholders in the old and new layouts, the idx number must match. Title placeholders don't have idx numbers, because there is only one of them on a slide at a time. The idx numbers tell PowerPoint which placeholder should receive information from a particular placeholder in the old layout. This allows you to have several of the same type of placeholder on a layout and still have PowerPoint map content correctly among them.

An additional wrinkle can appear if an embedded image is included, perhaps for a logo. Then the XML will include a line line this:

<a:blip r:embed="rId2">

rId numbers are used by the _rels file that corresponds with the layout to tell PowerPoint where to find the logo. If the rId number is wrong, PowerPoint will show an empty box with the text The picture could not be displayed. Of course, you could just replace the image if you see this error during file construction.

Static pictures, graphics, text boxes and shapes placed on the layout make no difference to layout mapping. Add them, remove them, they won't stop PowerPoint finding the correct layout.

If a pasted slide does not meet all of the above criteria, PowerPoint imports the slide layout from the old deck, prepending it's name with 1_, if it's the first time it's importing that layout. Very quickly, the client's deck is polluted with multiple spurious slide layouts. When face with choices like Title and Content, 1_Title and Content, 2_Title and Content, 3_Title and Content, the user will simply give up trying to decide which one to use. Branding goes down the drain.

After 3 pastes from "designer" decks, this is what your client is struggling with:
After 3 pastes from designer decks

Here are the recommendations that Microsoft should have published with the release of PowerPoint 2007: All new PowerPoint templates should include all default slide layouts and placeholders. That would have saved so much grief!

Please note, I am not suggesting that you restrict your design to only these layouts and placeholders. As long as you have the default layouts with the default placeholders, the rest of the master slide can be filled with all kinds of special-purpose layouts with any number of placeholders. Just remember, what ever you create today must be supported in the future. Restraint in slide layout numbers is best for your client's users. Too many layouts and they just don't know which one to pick!

To extend this to today, all new templates you create for a client should include the slide layouts and placeholders of all previous templates they have commissioned. Sometimes it's feasible to segregate these using different slide masters, one for each previous template they have used. Each slide master includes exactly the layouts and placeholders used in a previous version. Then in the receiving template, the user is instructed to paste immediately after a slide based on an earlier version. This method can reduce the user's pain of having to follow your shiny new template.

We have years of expertise in this area and can either assess your template for legacy slide compatibility or create a template or theme for you that will work seamlessly with your old files. We're here to help! Contact me at production@brandwares.com.

XML Hacking: Fix Broken PowerPoint Links

Someone sends you a presentation linked to an Excel file. The links don't work and you can't fix them without redoing them. Here's how to fix broken PowerPoint links with a one minute of XML Hacking.

This article is really just for PowerPoint for Mac users. If you have the Windows version, you can fix broken Excel or Word links by choosing File>Info, then clicking on Edit Links to Files in the right-hand column under Related Documents. (Please note, the Edit Links option only appears if you actually have a link in the open presentation.) Word and Excel already have utilities to fix links.

If you haven't hacked XML before, please read XML Hacking: An Introduction and XML Hacking: Editing in macOS. This article mentions Excel, which I've used as an example, but the same advice is true for Word files linked to PowerPoint. Links to other formats, like PDF, are simply not supported on macOS.

In Office, links to documents include the complete path. Of course, when you move those linked files to a new computer, the path is always different, so the links must be corrected. The symptoms of a broken link depends on the type of link that was created. If the file creator selected a workbook section or chart, then used Paste Special to paste in a link, you'll see this message when you double-click on the Excel excerpt:

Fix Broken PowerPoint Links - Paste Special

But the creator may have used Insert>Object instead, and chosen to link rather than embed the file. Then you'll see this when you try to edit:

Fix Broken PowerPoint Links - Inserted Object

Then after dismissing that dialog, you'll see the first one about the server error.


Fix Broken PowerPoint Links - The Steps

The issue is that a path is embedded in the PowerPoint file, and that path must be edited. Open the file in BBEdit.

The XML we need to change is associated with the slide(s) on which the Excel item is placed. So lets look. In the left-hand window, click on ppt. Then select slides then the _rels folder. Rels is short for relationships, and it's the mechanism in every OOXML folder that tells PowerPoint where to find the objects in use.

The _rels folder has a .rels file for each slide in the presentation. Open the file for the slide containing the linked Excel. If the link was inserted using Paste Special, it will look like this (Pay attention to the third line and scroll all the way to the right. The path to be edited is in bold):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject" Target="file:///\\192.168.1.250\Dockets\Test\Excel\Link2PowerPoint.xlsx!Sheet1!R1C1:R1C4" TargetMode="External"/>
  <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout" Target="../slideLayouts/slideLayout7.xml"/>
  <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing" Target="../drawings/vmlDrawing1.vml"/>
  <Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="../media/image1.emf"/>
</Relationships>

If the Excel file has been inserted as an linked object, it won't include a range of cells, just the workbook name:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject" Target="file:///\\192.168.1.250\Dockets\Test\Excel\Link2PowerPoint.xlsx" TargetMode="External"/>
  <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout" Target="../slideLayouts/slideLayout7.xml"/>
  <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing" Target="../drawings/vmlDrawing2.vml"/>
  <Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="../media/image2.emf"/>
</Relationships>

Since the Excel item was inserted on a Windows computer, the path uses backslashes instead of forward slashes. There are two path syntaxes that are acceptable. If both the file linked to and the presentation containing the link are in your User folder, you can use a relative path and the linked file will open up immediately. If the file linked to is on a network share or somewhere on your disk outside your user folder, you will have to use an absolute path and you will get a challenge from Office when you open the link.

Let's do the relative path first. In this example, the Excel file is in my user Documents folder and the PowerPoint is in my user Downloads folder. So I edit:

Target="file:///\\192.168.1.250\Dockets\Test\Excel\Link2PowerPoint.xlsx"

to:

Target="file:///../Documents/Test/Excel/Link2PowerPoint.xlsx"

In Unix/DOS speak, the 2 dots mean "go up one level", out of the Downloads folder where the presentation is into the main user folder. Then the slashes lead you down into the Documents folder and subfolders to the Excel location. Once you set a relative path, you must leave the PowerPoint file in the same folder. Moving it will break the path.


Fix Broken PowerPoint Links - The Best Relative Path

For a linked file that you know will be moved from desktop to desktop, the best strategy is to place both files in the same folder. Then use this path:

Target="file:///Link2PowerPoint.xlsx"

Now even if you shuffle it between Mac and Windows, the linked Excel file will open as expected without having to edit the links at all!


Fix Broken PowerPoint Links - Absolute Paths

If the file to be linked to is on another disk, use an absolute path. With an absolute path, you can move the PowerPoint file anywhere on your computer or to other machines and it will still be able to find the linked file. Here's what an absolute path looks like:

Target="file:///Volumes/TheNameOfYourHardDisk/Users/YourUserName/Documents/Test/Excel/Link2PowerPoint.xlsx"

Important! A macOS absolute path must begin with Volumes, followed by a slash and the name of the disk. If your network is set up for different operating systems, you'll probably use an IP address instead, as shown in the original file path. Consult with your IT department.

Office 2016 for Mac applications are sandboxed applications, so when you first open an Office file linked with an absolute path, you'll see a warning:


Fix Broken PowerPoint Links - Absolute Path Warning 1

Click on Select..., then you'll see:

Fix Broken PowerPoint Links - Absolute Path Warning 1

Select the correct file if it isn't already selected, then click on Grant Access. Now double-click on the linked Excel item to edit and you'll see this again:

Fix Broken PowerPoint Links - Edit Warning

OK, that's something of a hassle, but the good thing is that you won't see those warnings again as long as the linked file says in the same place with the same name. You also only get warned once per placed file, even if there are multiple uses of that file in your presentation.

Linked files are a huge benefit when you have a data source that is constantly being updated. Using them means your presentation can always be up to date. Now that you know how to fix the links, you have a very useful new tool.

The Flat Theme - Brandwares Best Practices

Flat Theme Shape Styles

I'm writing an article or two about Office Effects Themes and how you can modify them. As an example, I created the Brandwares Flat Theme, which will be of use to designers as is. This theme file gets rid of the bulgy 3-D shapes, glows and hokey shadows of the standard Microsoft themes and relies only on tints, shades and outline variations. You can use this example in 2 ways: as a theme file that you can modify and send as your own, and as an Effects Theme file that can be installed in Office for Windows to provide access to flat shapes in all other themes.

Here you can download the Flat Theme. It's also available on our Downloads page. After downloading, you can open it in PowerPoint, create new font and color themes, apply them, then resave as a new theme. The flat shapes will travel with the theme and be automatically applied to any deck that uses the theme. If you're an Office for Mac user, you'll have to create a font theme using this article: XML Hacking: Font Themes.


The Flat Theme - Specs

There are 7 variants in each row of the the Shape Styles dialog, each showing the dk1 color as a background plus the 6 Accent colors. The first 2 rows feature a 0.5pt outline on the shape in a darker variant of the accent color, with the first row showing a white shape background and the second row the relevant accent color.

The third row is the one I choose most of the time: a flat shape with no outline.

The fourth row has a 50% screened-back background color with black text.

The fills for the 5th and 6th rows are 2 progressively darker shades of the accent colors. The 5th row shows a 50% shade of the color, while the 6th is a two-layer multiplier fill with a 50% shade overlaying a 50% tint. I'll explain these more in the articles to come.

Users of Office 2016 for Windows and for Mac will see an additional group of Presets below the theme shape styles. Except for the stroke weight in row 2, these fills are generated automatically by the program and cannot be modified by XML.


The Flat Theme - Installing as Effects Theme

You can also use the Flat Theme as a new effects theme in Windows versions of Excel, PowerPoint or Word (Office for Mac will display effects themes embedded in a theme or template, but there is no support in the program interface for applying a different effects theme). Then it will appear in the Theme Effects dropdown of Office for Windows along with the standard Microsoft themes. Here are the steps to do that:

  1. Download the Flat Theme from the link above and unzip it.
  2. Change the file name from BrandwaresFlatShapes.thmx to Flat.eftx. The first part of the name can be something other than Flat, but the ending must be .eftx. No other change to the theme file is needed.
  3. Close PowerPoint.
  4. Copy the file to the same folder as the Microsoft Theme Effects files:

32-bit PowerPoint 2007: C:\Program Files (x86)\Microsoft Office\Document Themes 12\Theme Effects

64-bit PowerPoint 2007: C:\Program Files\Microsoft Office\Document Themes 12\Theme Effects

32-bit PowerPoint 2010: C:\Program Files (x86)\Microsoft Office\Document Themes 14\Theme Effects

64-bit PowerPoint 2010: C:\Program Files\Microsoft Office\Document Themes 14\Theme Effects

32-bit PowerPoint 2013: C:\Program Files (x86)\Microsoft Office\root\Document Themes 15\Theme Effects

64-bit PowerPoint 2013: C:\Program Files\Microsoft Office\root\Document Themes 15\Theme Effects

32-bit PowerPoint 2016 and 2019: C:\Program Files (x86)\Microsoft Office\root\Document Themes 16\Theme Effects

64-bit PowerPoint 2016 and 2019: C:\Program Files\Microsoft Office\root\Document Themes 16\Theme Effects

With Office 2013 and 2016, there may not be a root folder, but then the Document Themes folder will be inside Microsoft Office, eliminating one level.

Restart PowerPoint and you'll see a new addition to the Effects dropdown:

Using the Brandwares Flat Shapes theme as an Effects Theme
Flat Theme Chosen

Video Formats - Brandwares Best Practices

It can be a bewildering subject, figuring out which video formats are going to work in a presentation. It's doubly difficult when a presentation is designed on one computer, then played on another. I can't count the number of seminars I've observed where the presenter is humming and hawing about the video: "Well it worked in rehearsal..." Even Microsoft's web site has inaccurate information about choosing a video format, so what's a user to do?

Fortunately, we've done lots of research and testing on the subject. I'm focusing here on the use of video in PowerPoint and Keynote presentations to find what works reliably. But I make one assumption: that you are using current versions of the software and operating system. In Windows, you should be on Windows 7 or better and be using Office 2010 or better. In macOS, I regard El Capitan (10.11) as a minimum, running at least Keynote 6 and/or Office 2016 for Mac. You may be able to get away with less, but the degree of uncertainty and need for testing goes up.


Video Formats - Containers

The main reason why there is so much confusion around video formats is that each video has at least 2 types of format. One is the Container format and is denoted by the file ending of the video. MP4, MPG and MOV are Container formats. Most people refer to the container format, but most can hold a variety of video and audio streams that be differently encoded. An analogy might be a Word document that can contain a variety of languages. A .docx file ending doesn't tell you if it's an English text!


Video Formats - Codecs

The second format is the encoding, referred to as the Codec (short for Compression/Decompression). H.264 or MPEG-2 are both video codecs, but there are also audio codecs like MP3 and AAC. To ensure a video plays reliably in any given context, you have to have both the right container and codec formats. This is the source of the common complaint "Well, I used an .MP4 file, but it didn't work." The codec was wrong.

It's not such a big issue when all computers in a company are one operating system. If you're only using Windows, slap in a WMV file, it will work. Usually. But when a company has mixed operating systems, or when you're designing one one operating system for use on another, you have to be much more selective.

So here's my recommendation: stick with MP4 for a container format with H.264 for a codec. It is supported by most software, plus HTML5. An MPG container with the MPEG-2 codec is also reliable for desktop software. Using either of these 2 format combinations, the video will play in Keynote or PowerPoint in macOS and PowerPoint in Windows. Always.

But how do you tell what codec is used in a given file? The MP4 or MPG file ending gives nothing away.


Video Formats - Finding the Codec

In macOS, open the video file in QuickTime Player, then choose Window>Show Movie Inspector. The video and audio codecs will display beside the Format heading. Here's what you'll see with a usable MP4 or MPG file:

macOS - MP4 + H.264
Video formats: MP4-H.264
macOS - MPG + MPEG-2
Video formats: MPG-MPEG-2

Windows users must install third-party software. You can use the VLC video player for this, but I prefer MediaInfo, which is focused on simply providing information. One note: MediaInfo shows the H.264 codec as AVC. These shots show the video format highlighted in yellow:

Windows - MP4 + H.264
Video formats: MP4-H.264
Windows - MPG + MPEG-2
Video formats: MPG-MPEG-2

Let's hear what your experiences are with video in cross-platform presentations. Victories and horror-shows are both entertaining, I look forward to reading your comments.

SuperThemes from Brandwares

SuperThemes are a Microsoft-created theme format that includes more than one theme in the same file. You see them in action when you use a Microsoft theme in PowerPoint 2013 for Windows and PowerPoint 2016 for Windows and Mac. Opening a SuperTheme lights up the Design tab>Variants Gallery with design choices, like this selection used in Microsoft's Ion Boardroom SuperTheme:

SuperThemes from Microsoft

SuperThemes have 2 signficant advantages:

  1. The design variants show right up front on the Ribbon, so users immediately see what alternate looks are available to them.
  2. Including size variants ensure that the brand is never distorted by the user changing the slide size. The user can choose a slide size that completely fills any monitor, but the logos and artwork always remain at the aspect ratio you have set. No more graphic distortion

SuperThemes have been around for several years, but Microsoft has never released the specifications for creating them. Brandwares got to work on the problem and has reversed engineered the format. As I write this, we are the only company in the world that can create custom SuperThemes for you.


SuperThemes - How They Work

Micrsoft's SuperThemes include 4 to 8 design variants plus size variants for 16:9 and 4:3 aspect ratios. But that's just a starting point. Down at the lab we found we can create size variants for 16:10 monitors, 35mm film and all the other preset sizes that Microsoft includes in PowerPoint. Here's a downloadable example you can try out: Test SuperTheme

This SuperTheme contains 2 design variants, one with a white background and a second with a grey background. It also includes 3 size variants, for 16:9, 16:10 and 4:3. After you download and unzip the file, copy it to the the Document Themes folder inside your Office templates folder. Under Windows, this will normally be in your user Documents folder under Custom Office Templates\Document Themes. Mac users will need to hold down the Alt key while clicking on the Go menu and choosing Library. This opens the hidden user Library. Once that's open, look for Library/Group Containers/UBF8T346G9.Office/User Content/Themes and copy the .thmx file to that folder.

Now open PowerPoint, select the Design tab and drop down the Theme Gallery. Now there's a new row called Custom and that's where you'll find the test SuperTheme:

Design Tab Custom Row

Select it and you'll see 2 variants appear:

SuperThemes have Variants

Switching design variants will change all slides in the presentation to that design. Now try changing the Slide Size. There are 2 sizes immediately available, 4:3 and 16:9. Notice that the logo remains undistorted even when the slide size changes. You can't do that with a normal theme!

But many monitors are 16:10 and using 16:9 leaves big black bars at the top and bottom of your show. That's not a problem with this SuperTheme. Click on Slide Size>Custom Slide Size (Slide Size>Page Setup on a Mac). Change the Slide(s) sized for: dropdown to On-Screen Show (16:10). The presentation is resized without any distortion to the logo. (Since we've set up just 3 sizes, if you picked one of the other sizes like Banner or 35mm Film you would see logo distortion. So don't do that!)

When PowerPoint is using a SuperTheme with size variants, the Slide Size button works in a different way than normal. Inside of actually resizing the slide, it calls the associated size variant. If there is no variant for the chosen size, then PowerPoint resizes as usual. When you change the slide size to a smaller canvas, PowerPoint will ask whether you want to Maximise or Ensure Fit (Don't Scale or Scale on a Mac). In a SuperTheme where you are switching to a supported size variant, it doesn't matter which you choose, because PowerPoint won't actually be resizing the slides. It just applies a variant theme.


SuperThemes - What You Need to Know

SuperThemes are intended for use with PowerPoint 2013 and 2016. They can be used with earlier versions, but there will only be access to the primary theme. This is normally set to Widescreen, so a user of older software should switch the slide size from the default 4:3 10" x 7.5" format.

Research in 2019 has revealed that SuperThemes can only be constructed from Presentations having a single Slide Master. It appears that Microsoft didn't design the format for the additional complexity of multiple masters.

For a custom SuperTheme, you can supply separate themes or templates for each design and size variant. Each design variant can be completely independant, using different font or color themes, if needed. Multiply the number of designs by the number of sizes to know how many theme to supply. The downloadable SuperTheme above uses 2 designs in 3 sizes, so 6 themes went into its making.

When designing for SuperThemes, consider what might happen to an existing deck if the user changes the slide size after inserting graphics. If content placeholders in your variant themes have different aspect ratios, photos will still get distorted. So part of your design would be to include picture boxes that have a constant aspect ratio in all themes. They can be bigger or smaller, as long as the ratio of long side to small side is the same.

For 16:9 themes, we do not recommend the older On-screen Show (16:9) slide size produced by PowerPoint 2007 and 2010. This creates a slide that is 10" x 5.63". It's the right proportion, but when a user creates a new slide in PowerPoint 2013 or 2016, it defaults to the new Widescreen size 13.333" x 7.5". This means your theme graphics are scaled up and you lose quality. Instead, create 16:9 themes using the Widescreen size created by newer versions.

For 16:10, we've found that a 12" x 7.5" slide size works perfectly. Of course, 4:3 slides are still 10" x 7.5", as always. This means that you can keep the height constant on all size variants. Only the width changes.

Then email the themes to us and we'll assemble them for you. Too complicated? We're a full-service Office shop: we can create complete SuperThemes from an InDesign or Illustrator file. Just tell us which slide sizes you want to support and we'll do the rest. When we create a deck, it's always guaranteed to work as expected, since we know Microsoft Office at least as well as you know Adobe software. Contact me at production@brandwares.com

XML Hacking: Repairing Color Themes

Last time, I wrote about how to make great color themes. But what about if you (or your client) have discovered that an existing color theme has a problem. If you catch them early, most issues with color themes can be corrected using PowerPoint's user interface. Say you've created a theme or template, but some of the tests in the last article show problems. Repairing color themes requires rearranging the theme colors, then recoloring any graphic elements on the Slide Master and Slide Layouts.

If you didn't test the template or theme and you've already created a presentation before finding the theme problem, it's more work to fix. Follow the same sequence: rearrange the colors in the theme, fix the Slide Master, then the Layouts and finally repair any element on each slide that still needs help.

But what about if there are multiple templates, or several decks that have been created from a faulty theme? Repairing color theme problems manually quickly becomes an ordeal. It's time-consuming and error-prone to try to make all the changes by hand. Searching and Replacing using a text editor would be much quicker and more thorough. It's time to hack some XML!


Repairing Color Themes - The Theme

If you haven't editing XML directly before, please read XML Hacking: An Introduction. MacOS users should also read XML Hacking: Editing in macOS to avoid a couple of Mac-specific XML issues.

We're going to fix all the color theme problems by searching for XML text and replacing it with corrected values. Professional test editors really shine for this kind of work because of their abilities to do search and replace on multiple folders full of files, saving you hours of work. NotePad++ for Windows and BBEdit for macOS are 2 excellent choices for this work, they both have multi-file search and replace.

If you're using Windows, unzip the files in a separate folder. On a Mac, open the theme or template in BBEdit.

Start by correcting the color order of the theme file located in ppt\theme\theme1.xml. During design, you may have applied more than one theme and PowerPoint hoards them all. If you have more than one theme file, check the name attribute to ensure you're changing the one actually used in your deck. (If the theme is called Office Theme, that's a Microsoft default, you don't have to update it.) You may also have more than one theme if your presentation contains more than one slide master. Here are before and after examples, showing only the first 4 colors:

Before: Theme1.xml
<a:clrScheme name="Broken">
  <a:dk1>
    <a:srgbClr val="333333"/>
  </a:dk1>
  <a:lt1>
    <a:srgbClr val="518CA3"/>
  </a:lt1>
  <a:dk2>
    <a:srgbClr val="FFFFFF"/>
  </a:dk2>
  <a:lt2>
    <a:srgbClr val="E4E4E4"/>
  </a:lt2>

This has blue in the lt1 (Light 1) slot and white in the dk2 (Dark 2) spot. One symptom is inserted SmartArt that shows blue text instead of the expected white.

Before: SmartArt Appearance
Repairing Color Themes - Before
After: Theme1.xml
<a:clrScheme name="Repaired">
  <a:dk1>
    <a:srgbClr val="333333"/>
  </a:dk1>
  <a:lt1>
    <a:srgbClr val="FFFFFF"/>
  </a:lt1>
  <a:dk2>
    <a:srgbClr val="518CA3"/>
  </a:dk2>
  <a:lt2>
    <a:srgbClr val="E4E4E4"/>
  </a:lt2>

If a presentation uses Chart Templates, you may also see files in the Theme folder like themeOveride1.xml. This override component allows a chart template to have a color theme different from the presentation into which it's placed. All chart templates created from a template contain this themeOverride component, which is simply a copy of the main color theme. If the template color theme is bad, then you'll also have to open all the chart templates and update chart/theme/themeOverride1.xml.


Repairing Color Themes - The Slide Master

For our simple example, we can skip this step, but for more complex repairs, it may also be necessary to adjust the color map in the slide master. If the presentation was based on a color theme exported from Word or Excel, this is necessary. It's also often needed for legacy decks that have been imported from PowerPoint 2003 and earlier.

The Slide Master has 2 parts. First is the slide formatting that displays in the Slide Master view of PowerPoint. It's tagged with <p:cSld>. Immediately after that are parameter storage sections holding references to the slide layouts, title, body and other text formatting, etc. The very first section <p:clrMap is what we're looking for. The full default color map looks like this:

<p:clrMap bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2" accent1="accent1" accent2="accent2" accent3="accent3" accent4="accent4" accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/>

Compare this to a color map when a Word color theme is imported to PowerPoint:

<p:clrMap bg1="dk1" tx1="lt1" bg2="dk2" tx2="lt2" accent1="accent1" accent2="accent2" accent3="accent3" accent4="accent4" accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/>

You can see that the dark colors dk1 and dk2 are mapped to the background instead of the text, while text is formatted with lt1 and lt2. The color theme hasn't been altered, just the way it is mapped to the presentation elements. There is nothing in the program interface to fix this, you must edit the XML. Mental organization becomes very important when changing both the theme and the color map, you can easily get confused.


Repairing Color Themes - Search and Replace

The above steps are preparatory to making the actual changes. Now we need to change the color tags attached to all affected elements in the Slide Master(s) and all Slide Layouts and Slides. Let's use the example of switching the blue and white. The blue was in the lt1 slot, which is mapped in the Slide Master to bk1 by default. The white was in the dk2, mapped to tx2. After switching the color order, we need to change all bk1 color tags to tx2 and all tx2 tags to bk1.

Wherever a tag is used as an attribute, it has straight quotes before and after. Include these in your search terms so you don't mess up the color map in the Slide Master. It's simplest to run this on all files in the archive:

Find what: "bk1" - Replace with: "tx22"

Find what: "tx2" - Replace with: "bk1"

Find what: "tx22" - Replace with: "tx2"

That should do it! Zip up the files with the same file ending as the original, if you're using Windows. On the Mac, just save the file. Test in PowerPoint.

After: SmartArt Appearance
Repairing Color Themes - After

This is the simplest repair scenario. Sometimes you have to move more colors around, particularly if the creator was someone unfamiliar with PowerPoint. Make notes ahead of time, to make sure you've got the right colors moving to the right slots. And always work on a copy of the file, not the original! If it gets too complicated, just send it to us, we do this kind of thing all the time.

Next time, I'll be discussing PowerPoint SuperThemes. Brandwares has cracked the construction of these, so I'll cover what you need to know.

Great Color Themes - Brandwares Best Practices

Great color themes in Office are not a random collection of swatches. Each spot in a color theme has a job. Once you learn those functions, great color themes will roll out from your office.

I'm always astounded to hear a Office "professional" who says "I don't use themes." I'm amazed because in modern versions of Office it's impossible to not to use themes. If you haven't set a theme for your template, then you're using the default Office theme. Whether you like it or not! Themes are an integral part of Office, so you'd better learn how they work.

I've previously covered Font Themes and how to hack them, a necessary skill for macOS creators. Check out XML Hacking: Font Themes and XML Hacking: Font Themes Complete. In this post, I'm covering the inner workings of theming to show you how to create great color themes. I've touched on this subject previously in Office Charts: 6 Colors Maximum! For ideas on how to include more than one color theme in a template or presentation, please see XML Hacking: Color Themes


Great Color Themes: The Basics

When you create a color theme in PowerPoint, the color set is added to the theme1.xml file in your presentation and it's saved on your computer. If you create a second color theme, that theme is also saved to your computer, but it replaces the first one in your deck. When you're using the user interface, each Slide Master has only 1 theme at a time. So for more color themes, create more slide masters. If the color theme is for a special purpose, like differently-colored charts, the extra slide master might have only 1 slide layout. That's less confusing for users.


Great Color Themes: Color Slot Functions

Almost every slot in a color theme has a PowerPoint function, a job that it fulfills for the program. If you don't know what these are, you'll place the wrong color in the slot and get a result that looks weird in the program interface. Needless to say, this doesn't help your professional cred with your client.

Here's the Color Theme editing dialog as seen in PowerPoint 2016 for Mac. In Office for Mac, you can only create color themes in PowerPoint. In Windows versions, you can create them in any Office program, though there is a good reason why you should still use PowerPoint.

Color Theme Editor

The following advice covers standard presentations that have a light background and dark text. If you're going for the mysterious Mafioso look with a dark background, then reverse the following instructions putting text colors into the light slots and backgrounds into the dark ones. Oddly enough, when PowerPoint imports a theme exported from Word for Excel, it will default to the Mafioso look. This is the good reason why you should always export theme files from PowerPoint, where your choices for background and text are explicit and that information is preserved in the theme.

The first 4 colors are for text and backgrounds. Although all 4 are called Text/Background, that just to accommodate the occasionally light text on a dark ground, as mentioned in the previous paragraph. In reality, Dark 1 is the main text color. If you have black text in the deck, leave this set at black. You should only change this if you have no black text (Please dont't tell me you're doing that trendy look of black text that's dark grey and makes it look like your printer ran out of toner. Eww.)

You may have a secondary text color for headings. That must go in the Dark 2 slot. Not in Light 1! Not in Light 2! All text colors go in the dark slots!

Light 1 is for background colors. Most of the time, this is white, so leave Light 1 set at white. If the design calls for a different background color than white, set it here.

Light 2 is the only slot in the theme that doesn't have a secondary job. You can make this slot any color! It doesn't matter! Woo-hoo! Let's hold off, this is a good spot for an extra color that doesn't fit elsewhere.

Accent 1 is the default color for inserted SmartArt, Text Boxes and Shapes. Almost all the time, you will make Accent 1 the primary corporate color. For our company, PMS 481C is the code color, so Accent 1 is the RGB equivalent in all our company themes.

If the company has a secondary brand color, Accent 2 is the logical position for it. So what about Accents 3 to 6? You're thinking "Hey! 4 empty slots! Throw some colors in, we're done!" Not so fast, junior.


Great Color Themes: Chart Fills

The set of Accent colors have a huge responsibility of their own: chart fills! I've created a color sequence to show how these are applied by PowerPoint.

Office programs fill charts using these 6 six colors in sequence. So when you're designing, it's best to know what that sequence is. The colors will be used in the same order:

Left to Right for Column Charts
Great Color Themes - Column Chart
Bottom to Top for Bar Charts
Great Color Themes - Bar Chart
First to Last for Line Charts
Great Color Themes - Line Chart
From 0 degrees (top dead center) clockwise for Pie Charts
Great Color Themes - Pie Chart

If there are no additional colors in the design standards, we create a pair of lighter and darker variations of the brand colors for Accents 3 to 6. But don't just create a pretty series of swatches! Is the chart readable when printed on a black and white laser? Can color-blind people read it? You're a Designer! You're supposed to be thinking of these things! The rule of thumb is to alternate darker and lighter colors in a sequence so they can be distinguished from one another even in monochrome. Not sure? Test it!

Of the 12 colors in the theme, only the first 10 are accessible to the user in color picker dialogs. The last 2, Hyperlink and Visited Hyperlink, are applied automatically when the user inserts a hyperlink in the document. I usually use 2 of the theme colors for these, rather than Microsoft's standard colors. If there's a blue, that's a good choice for the hyperlink, it's a visual cue. The followed hyperlink can be a lighter grey or other tint, if there is one in the palette.


Great Color Themes: Recognizing Trouble

Before shipping the deck, here are a few quick tests you should be performing to show any color theme problems:

Insert SmartArt: Is the text readable?
Smart Art Problem
Insert a chart: Does the preview look right?
Chart Preview Problem

If either of these look odd, you probably have a color theme problem. If the text or background of either the chart preview or SmartArt don't match the background of the deck, you've probably inserted a dark color into the Light1 slot

Insert a table: Do the auto-generated variations contain many useless combinations?
Table Colors Problem

Most of the autogenerated table combinations in this example are hideous and unworkable, sure sign of a bad color theme. You may also see a table style preview that looks different from the actual table. If the table preview shows a different color for table text (it will just show colored lines, not actual text), then the colors in Light2 and Dark2 have to be switched. Another problem indicator is if it appears you are selecting one color in the picker, but the actual color applied is different.

Insert a chart in Excel: Does the chart background match the worksheet background?
Excel Insert Chart Problem

If you see any of the above symptoms, take the time to fix them and do it right. Your client will notice these glitches and you won't be able to 'splain them away.

The general method to fix these issues is to put the theme in correct order, then go through the entire deck starting with the Slide Masters, correcting the colors back to the designed appearance. This effort isn't too bad if it's a single template or theme you're correcting. Groups of finished presentations are a different matter that need a more automated approach. Next time, I'll be writing about how to repair presentations with a bad color theme, using XML Hacking.