PPT2HTML Placeholder Reference
Placeholders are the "heart" of PPT2HTML. They tell it what kind of information to extract, where to place it and how to format it on the web pages it PPT2HTML creates from your PowerPoint presentations.
This (very long!) page is your complete reference to PPT2HTML placeholders. You may want to print it to have handy when you work with PPT2HTML's templates.
About PPT2HTML Placeholders
PPT2HTML placeholders are arranged by category in a kind of "dot notation" that's familiar to programmers but may not make immediate sense to "civilians". Don't let it scare you off; once you get the general idea, you'll find it simple to understand.
For example, placeholders having to do with your PowerPoint slides and their content all begin with :Slide. So the placeholder that represents the slide image that PPT2HTML produces from the slide is :Slide.Image:
This dot notation can go several levels deep. It may help to read it right-to-left:
- :Slide.Image.width: means "the width of the Image produced from the Slide"
- :Slide.Ph.BodyText1: means "the text from BodyText1 from the Placeholders on the Slide"
Index to Placeholders
- Slide placeholders - individual slides in your presentation and the images PPT2HTML creates from them
- Slide.Ph placeholders - the text in in Click Here placeholders on your PowerPoint slides
- Other Slide text placeholders - other text from your slides
- Slide.Transition and related placeholders - slide transition times, effects and sounds
- Other Slide placeholders - slide numbers, etc.
- Notes placeholders - the text on your presentation's Notes Pages.
- Nav placeholders - navigation links that PPT2HTML produces
- System placeholders - your computer's current system time, date, etc.
- Prefs placeholders - options you choose in the Preferences dialog
- File placeholders - information about the PPT file you're converting (folder, name, date, etc.)
- Other placeholders
- Document Properties placeholders - PowerPoint's Built-in and Custom document properties
With only a few exceptions, PPT2HTML produces no HTML of its own. Instead, it substitutes data and images from your PowerPoint presentation in place of the placeholders in your templates.
You get to supply whatever HTML code you like. PPT2HTML does include a little HTML when it "fills in" certain placeholders. Any such placeholder will have .HTML in its name.
For example, :Slide.Ph.BodyText1_AsBullets.HTML: produces the body text from your slides as HTML-formatted bulleted lists.
To see a summary of placeholders, click the Prefs icon on the PPT2HTML toolbar then click CODES in the Preferences dialog box. You can copy and paste from this listing into your template files while editing them if you like.
- :Slide.Image: becomes the name of the image file exported from the current slide.
Example: Include this in your template file:
<IMG SRC=":Slide.Image:">
and when PPT2HTML exports, for example, Slide 4 from your presentation, it creates Slide4.GIF and substitutes Slide4.GIF for :Slide.Image:
So Slide4.htm includes:
<IMG SRC="Slide4.GIF">
and you get an image of Slide 4 on the HTML page.
- :Slide.Image.width: becomes the slide image width you've specified in PPT2HTML's Preferences dialog.
- :Slide.Image.height: becomes the image height (which PPT2HTML calculates for you based on the width and the slide's proportions).
:Slide.Image.width: is particularly useful when you also want to use the :Nav.Map: placeholder to add a clickable image map to your html pages. For the map to work correctly, the size of the image specified in your template and the size you specify in PPT2HTML's preferences dialog are identical. Otherwise the clickable imagemap links don't line up with the original buttons they're created from. Ooops.
So instead of specifying an image width or height in your template, use :Slide.Image.width: like so:
<IMG SRC=":Slide.Image:" width=":Slide.Image.width:">
PPT2HTML substitutes the image width you chose in the preferences dialog for :Slide.Image.width: so you can change the image size in the Preferences dialog without having to edit your template.
If you prefer, you can use :Slide.Image.height: instead, or even both, but there's no need to. :Slide.Image.width: alone is enough.
- :Slide.Shapes.HTML: causes PPT2HTML to export each picture, chart, etc. on the slide as an individual image.
Image size is relative to the assumed "full slide" size (Image width) you supply in PPT2HTML Preferences. For example, if you specificy an Image width of 1000, then when PPT2HTML converts a chart half the width of the slide, it will export it at 500 (half of 1000) pixels.
Any placeholder with Ph as part of its name is a stand-in for one of PowerPoint's text placeholders, the "Click here" boxes you click to add new text to a slide.
It's important to distinguish between PowerPoint's placeholder text and ordinary text that you add with the text tool or by clicking on an Autoshape and typing. PPT2HTML treats them differently.
- :Slide.Ph.TitleText: becomes the text from the slide's title placeholder
- :Slide.Ph.SubtitleText: becomes the subtitle text from a Title slide's subtitle placeholder
- :Slide.Ph.BodyText1: becomes the raw, unformatted text from the first body text placeholder on the slide.
- :Slide.Ph.BodyText1_AsPara.HTML: becomes the text from the first body text placeholder on the slide, formatted as HTML paragraphs with P and BR tags.
- :Slide.Ph.BodyText1_AsBullets.HTML: becomes the text from the first body text placeholder on the slide, formatted as an HTML Unordered List (ie, a list of bulleted points)
- :Slide.Ph.BodyText1_AsNumbers.HTML: becomes the text from the first body text placeholder on the slide, formatted as an HTML Ordered List (ie, a list of numbered points)
Notes
If there's no title or body placeholder text on your slide, :Slide.Ph.TitleText:, :Slide.Ph.SubtitleText: and the other Slide.Ph placeholders are replaced with nothing. They don't appear in the HTML.
We use this trick in some of our templates, where we specify both :Slide.Ph.SubtitleText: and :Slide.Ph.BodyText1: on the same line. Since a slide can have a Subtitle or Body Text but not both, this single line picks up Subtitles from slides based on the Title layout or Body Text from slides based on other layouts.
Numbered and Bulleted lists retain the original indent levels you've set in PowerPoint.
You typically wouldn't use these in a regular web page, since you'd already an image of the slide in the HTML, but they can be quite useful if you wish to provide text-only web pages for readers who have slow connections or who use screen reader software or other assistive devices.
With these placeholders, you can easily provide text-only alternate pages from your PowerPoint presentations or use the text from the slide in ALT tags for each of the slide images.
PPT2HTML also picks up text from the second body text placeholder on slides (the Two Column text layout, for example). The placeholder names are the same as the ones described above, but with a 2 in place of the 1 (ie, :Slide.Ph.BodyText2:)
- :Slide.OtherText: becomes any text that's not in one of the slide's Title, Subtitle or Body text placeholders
- :Slide.AllText: becomes all text from the slide, title/body placeholders included.
Notes
PPT2HTML constructs :Slide.OtherText: and :Slide.AllText: in the order in which text is "stacked" on the PowerPoint slide. In other words, the first text you place on the slide will appear first in :Slide.OtherText: and :Slide.AllText: when the slide is converted to HTML.
To check the stacking order, click anywhere off the slide in PowerPoint to ensure that nothing is selected, then press TAB to select each object on the slide in stacking order.
PPT2HTML doesn't process text in groups, graphics, charts and other non-PowerPoint content.
- :Slide.AdvanceTime: becomes the slide advance time you set in PowerPoint for this slide.
- :Slide.Transition.Sound: becomes the name of any WAV file you've specified as a slide transition sound
If there's no slide transition sound but the first animated object on the slide is a sound (which produces more or less the same effect in PowerPoint shows) :Slide.TransitionSound: returns that sound instead.
PPT2HTML also creates a text file that lists the sound files (including the path if PowerPoint makes it available) you'll need to upload to your web server for the HTML version of the presentation to play properly. It creates this file in the HTML Output folder you chose in the Preferences dialog.
- :Slide.TransitionEffect.Name: returns the name of the slide transition effect (the name you'd choose in PowerPoint's dialogs)
- :Slide.TransitionEffect.MSIENumber: returns the MS Explorer transition effect that's the closest match to the PowerPoint transition.
- :Slide.TransitionEffect.MSIE.HTML: - the coolest of the bunch. Include this as-is in the HEAD section of your template and PPT2HTML will automatically create a metatag that supplies the transition effect, duration and type. See The KIOSK template for an example.
See AutoAdvancing Presentations, Slide Transitions to learn how to include advance times and slide transitions in your templates to create HTML presentations that automatically advance from slide to slide, just as in your original PowerPoint presentations.
Or just use :Slide.TransitionEffect.MSIE.HTML: in the HEAD of your template. When you make HTML, each of your files will have something like this in the HEAD:
<meta http-equiv="Page-Enter" content="revealTrans(Duration=2,Transition=5">
Notes about Slide Transition Effects
- The numbers and names returned by PPT2HTML placeholders make sense to Microsoft Internet Explorer (which is why the placeholders all have MSIE in their name). Other browsers may or may not recognize them.
- An awful lot of PowerPoint's transitions don't have equivalent transitions in MSIE. PPT2HTML matches PowerPoint's transitions to the closest equivalent MSIE transition, or where there's no close equivalent, it uses a default Wipe Down transition (usually the quickest for the browser to display).
- PPT2HTML makes PowerPoint's Fast transition speed = 0; Medium = 2; Slow = 5
- If there's sufficient demand, we'll consider adding a way for you to control both the transition speed mapping and transition mapping. Talk to us.
- :Slide.Number: returns the slide number
- :Slide.PrintoutNumber: returns the number that would appear on this slide if you printed it out
- :Slide.Shapes.HTML: causes PPT2HTML to export each picture, chart, etc. on a slide to a separate image file. The name of the image file is the same as the name of the shape being exported.
PPT2HTML includes the name of each exported image in a normal <img src="xxx"> tag followed by a <br> (break) tag. See Plain Text with Exported Shapes for a usage example.
In File, Page/Slide Setup, you can change the starting page number for your presentations. When you do this, the slide number and the page number as printed will no longer be the same. The first two placeholders above let you choose the one you want to use.
These are very similar to the Slide.Ph placeholders, but as the name suggests, they give you access to each slide's Notes Page text rather than to the text on the slide itself.
- :Notes.Ph.BodyText: becomes the raw, unformatted text from the first body text placeholder on the slide.
- :Notes.Ph.BodyText_AsPara.HTML: becomes the text from the first body text placeholder on the slide, formatted as HTML paragraphs with P and BR tags.
- :Notes.Ph.BodyText_AsBullets.HTML: becomes the text from the first body text placeholder on the slide, formatted as an HTML Unordered List (ie, a list of bulleted points)
- :Notes.Ph.BodyText_AsNumbers.HTML: becomes the text from the first body text placeholder on the slide, formatted as an HTML Ordered List (ie, a list of numbered points)
Notes text in PowerPoint doesn't have indent levels the way body text on slides does, so the results from the Notes.Ph.BodyText_Asxxx.HTML placeholders won't look the same as the corresponding Slide.Ph.BodyText_Asxxx.HTML placeholders.
PPT2HTML can convert all of the hyperlinks and action settings into clickable links in your HTML presentation. All you need to do to make this happen is to use the :Nav.Map: placeholder in your template and include an image.
When you include :Nav.Map: in your template, PPT2HTML searches for each action button on the slide and on the slide's Master. It also checks each shape on the slide for Alternative or Web text, which it turns into an ALT tag.
It produces a client-side clickable image map for the :Slide.Image: image in the HTML file.
Bottom line: pretty much anything that's clickable in your PowerPoint presentation turns into an equivalent link when you convert the presentation to HTML. Without your having to lift a finger.
When using :Nav.Map: in your template, there are just a few rules you must follow:
- To use a :Nav.Map: you must also include a :Slide.Image: placeholder. Without an image, an image map isn't meaningful.
- :Nav.Map: should appear before the :Slide.Image: placeholder.
- When using :Nav.Map:, always specify your :Slide.Image: dimensions in pixels, not percents. The image map coordinates are required to be in pixels, not percents, so the image dimensions must match.
Example: Here's how you use Nav.Map and Slide.Image together. You can copy/paste this into your own templates if you like.
:Nav.Map:
<CENTER>
<IMG SRC=":Slide.Image:" width=:Slide.Image.width: BORDER="NO">
</CENTER>
See How does PPT2HTML handle links and other PowerPoint features? for a more detailed explanation of what happens to each different type of action button in your PowerPoint presentation when PPT2HTML converts it to HTML.
- :Nav.LinksToAll: becomes a series of numbers, one for each slide in the presentation. Each number is a link to the equivalent HTML slide.
Example: Suppose you have 10 slides in your presentation. :Nav.LinksToAll: produces something like this:
1 2 3 4 5 6 7 8 9 10
When you view the HTML and click the "5", it takes you to the HTML version of Slide 5.
Accessibility note: Each numbered link has ALT text like "Slide 1", "Slide 2" and so on. If you prefer to use e.g. "Page" instead of "Slide" or you want the links in some language other than English, you can make a few changes to PPTools.INI (How to edit PPTools.INI):
[PPT2HTML]
SlideText=whatever text you like here
PPT2HTML will now use your text instead of "Slide" when it generates Alt tags for LinksToAll.
Normally, PPT2HTML supplies a space between slide numbers when it produces LinksToAll. You can add an INI-style entry at the top of your template file to control the character(s) PPT2HTML inserts between links in LinksToAll.
For example, if you wanted a linebreak instead of a space between each (to make them stack vertically) you could add this to your template file:
[Nav.LinksToAll.Custom]
Spacer=<br>
If you do that, your LinksToAll will look like this in the HTML:
1<br>2<br>3<br>4<br>
and will appear in the browser like this:
1
2
3
4
Note: Some HTML editing programs may take exception to this (admittedly peculiar) idea of having INI-style entries before the beginning of the legitimate HTML code. They may decide to "fix" the problem for you and move the [Nav.LinksToAll.Custom] line elsewhere, in which case it won't work.
If you run into this, enclose everything prior to the opening HTML tag in comments, like so:
<!-- This turns it into a comment but PPT2HTML will still read it
[Nav.LinksToAll.Custom]
Spacer=
-->
One of our PPT2HTML users provided this handy trick for Dreamweaver 3:
In EDIT --> PREFERENCES --> HTML REWRITING, uncheck "Fix Invalidly Nested and
Unclosed Tags" and the problem goes away.
That is, Dreamweaver doesn't "fix" the oddball HTML. ;-)
While PPT2HTML converts PowerPoint's own action settings to clickable links, the Nav placeholders give you tremendous flexibility in setting up custom navigation options for your HTML presentation. You may need to ensure that your HTML presentations have navigation links even though the presentation author hasn't added them to the PPT file, for example.
Nav placeholders in your templates can add navigation links automatically to every presentation you convert.
Each Nav. placeholder becomes the name of another HTML file to link to. PPT2HTML automatically supplies the names of the next, previous, first, last, home and other HTML files it generates or that you specify, so you never have to edit the HTML it produces.
You can easily set up Next/Previous, Last/First slide, Home Page, and other navigation aids just by adding a few lines of HTML code to your template.
Check out Sample Conversions to get an idea of what can be done.
Each of the :Nav.Next: placeholders produces the name of the next HTML file in the presentation or the name of some other HTML file as appropriate.
Each of the :Nav.Next: placeholders has a corresponding :Nav.Previous: placeholder that works pretty much the same way, except that it produces the name of the previous slide in your HTML presentation rather than the next slide.
- :Nav.Next: becomes the name of the next HTML file in the series or the name of the last file in the series if it's already on the last file. In other words, when someone views your HTML presentation, they can simply click the Next link text to go to the next slide. When they get to the end of the presentation, the Next link simply reloads the last page.
- :Nav.NextOrLoop: becomes the name of the next HTML file in the series unless it's already on the last file; in that case, it becomes the name of the first HTML file in the series. This is useful for producing auto-running/auto-looping presentations.
- :Nav.NextOrHome: becomes the name of the next HTML file in the series unless it's already on the last file; in that case, it becomes the Home Page URL you specified in the Preferences dialog box. If you use :Nav.NextOrHome: to create your Next links, visitors will be able to click through your presentation a slide at a time, then will be returned to your home page when they click Next on the last slide.
- :Nav.NextOrNothing: becomes the name of the next HTML file in the series unless it's already on the last file; in that case, it produces nothing. A blank, in other words. Your Next link text will still be there for the viewer to click, but clicking it won't force the page to reload.
- :Nav.NextOrNothing.HTML: becomes a fully HTML coded link to the next slide (with Next as the link text) unless it's already on the last slide; in that case it becomes nothing. No link is created.
NOTE: Unlike most of the other placeholders, :Nav.NextOrNothing.HTML: actually produces HTML code (hence the .HTML as part of its name). To use this placeholder in your templates, simply type :Nav.NextOrNothing.HTML: without any surrounding HTML link code.
ALSO: This and the corresponding :Nav.PreviousOrNothing.HTML: placeholders produce links whose link text is Next or Previous, respectively. If you'd like different link text, make the following entries in PPTools.INI (How to edit PPTools.INI):
[PPT2HTML]
NextText=Whatever Next link text you want to use
PreviousText=Whatever Previous link text you want to use
PPT2HTML will now use your link text for :Nav.NextOrNothing.HTML: and :Nav.PreviousOrNothing.HTML: links.
- :Nav.FirstPage: and :Nav.LastPage: produce the filenames of the first and last HTML files in your presentation respectively.
- :Nav.ThisPage: produces the filename of the current html page.
System Information Placeholders
- :System.Time: and :System.Date: produce the current Time or Date from your computer's internal clock.
They're handy for including footnotes on your web pages to indicate when the presentation was last updated.
When PPT2HTML replaces time or date placeholders, it uses the system's time/date formats (ie, the formats you've chosen in Control Panels/Regional Settings). It uses the short date format.
If you'd rather use the Long Date format, add this to the [Settings] section of PPTOOLS.INI:
(How to edit PPTools.INI)
DateFormat=Long Date
TimeFormat=Long Time
You can also experiment with the Regional Settings Time/Date formats until you get one that suits your needs, then select and copy it into PPTOOLS.INI.
For example:
DateFormat=yyyy-MM-dd
In Regional settings, choose a sample format then click Apply to see an example of what it looks like.
If you enter invalid time/date formats, PPT2HTML ignores your entries and inserts the default time/date format instead.
The Prefs placeholders become the options you've selected in the Preferences dialog.
- :Prefs.OutputFolder: becomes the full path, backslash-terminated, to the HTML output folder you chose.
- :Prefs.BaseName: becomes the base filename you chose. For example, if you typed Demo as the base name, your HTML files will be named Demo1.htm, Demo2.htm and so on.
- :Prefs.TemplateFolder: becomes the full path, backslash-terminated, to the Template folder you chose.
- :Prefs.TemplateName: becomes the name of the template file you chose to make this conversion.
- :Prefs.Homepage: becomes the Home Page URL you typed.
- :Prefs.PageTitle: becomes the title you typed for your HTML pages. To use this in your templates, add the following to between the <HEAD> and </HEAD> tags in your template.
<HEAD>
<TITLE>:Prefs.PageTitle:</TITLE>
</HEAD>
Now your PageTitle appears in the browser's title bar when you view your HTML.
:File: placeholders return information about the PowerPoint file you're converting to HTML with PPT2HTML.
- :File.Name: becomes the name of the PowerPoint file you're converting, without extension.
- :File.NameExt: becomes the name of the PowerPoint file you're converting, with extension.
- :File.Path: becomes the full path to the PowerPoint file you're converting, backslash-terminated. (Note: include both :File.Path: and :File.Name: to get the full path and name of the file.)
- :File.DateTime: becomes the last saved date and time of the PowerPoint file you're converting. The exact formatting of the date and time depends on the options you've chosen in the Windows Control Panel for date and time displays.
- :File.Date: becomes the date the file was last saved
- :File.Time: becomes the time the file was last saved
- :File.TotalSlides: becomes the number of slides in your presentation
- :File.SizeInKb: becomes the size of your PPT file in Kb
- :File.SizeInMb: becomes the size of your PPT file in Mb
The following entries in the [PPT2HTML] section of PPTools INI control the formatting of file sizes:
(How to edit PPTools.INI)
[PPT2HTML]
FileSizeFormatString=######.#
SmallFileSizeFormatString=#.###
The number of ## characters controls how many places appear to left and right of decimal point (or you can leave out the decimal point altogether).
PPT2HTML first checks to see what value is produced when FileSizeFormatString is applied. If that produces a blank, it uses SmallFileSizeFormatString instead.
For example, if FileSizeFormatString = ######## and the filesize is .2mb, .2 formats to blank (no decimal point in the string, nothing to the right of decimal point). So PPT2HTML uses SmallFileFormatString, so if that's set as above, the file size in MB will appear as .200 or .2.
Note: you can use the Document Property :number of bytes: placeholder to get the number of bytes in the file.
- :Page: gives you the current page number in the HTML version of the presentation, regardless of what the slide number might be. For example, suppose you choose to convert slides 10 through 42 of your presentation to HTML as a standalone show. Slide 10 will become the first HTML file, Slide 11 the second and so on, so :Page: will become 1 when converting Slide 10, 2 when converting Slide 11, etc.
- :TotalPages: gives you the total number of pages in the HTML version of the presentation. In the example above, TotalPages would become 33 (10 - 42 inclusive).
- :Flash.Code: is a special placeholder for Flash support. See FLASH! PPT2HTML does it! to learn how it's used.
- :TheBest: produces a few words of gratitude to someone who deserves it ten times over.
Document Properties Placeholders
PowerPoint has a slew of document properties, some built-in, some that you can customize yourself.
You can use any of these as placeholders in your PPT2HTML templates.
To learn what properties are available, open a PPT file in PowerPoint, then choose File, Properties from the menu bar. All of the text boxes in this dialog are properties of one sort or another.
PowerPoint maintains some of them for you (total editing time, for example) and won't let you edit them. It suggests values for others (Title, for example) but lets you change them if you like. And on the Custom tab you can create and fill in your own properties if you like.
You can use all of these properties, Built-in or Custom, as placeholders in PPT2HTML. To see a listing of all the placeholders PPT2HTML supports, including those for PowerPoint's built-in properties and any Custom properties you've created, click CODES on the PPT2HTML prefs dialog.
How to edit PPTOOLS.INI
- Click the Help button (it has a ? icon) on the PPT2HTML toolbar.
- Click Edit PPTools.INI on the dialog box that appears
- PPTools.INI opens in Notepad.
- Locate the [PPT2HTML] section heading.
- Edit the line you want to change or add a new line directly beneath the [PPT2HTML] line and type the new line you want to add.
- Be sure not to add any blank lines.
- Choose File, Save from the main menu bar to save the file, then choose File, Exit to quit Notepad
- Click OK to close the PPT2HTML Help/About dialog box
If you don't see Edit PPTools.INI, please visit The PPTools download page, download and run the latest installer. That'll update your version of PPT2HTML automatically.