HTML Publish Properties

An implementation must have the ability to save (and publish) a presentation to a web-friendly format like HTML or MHTML. Various parameters are used to configure the application for saving such formats as well as to control what content gets generated. The parameters that configure the application are the HTML Publish properties whereas the content properties are the Web Properties.

The HTML Publish properties provide the author with the ability to control what content gets displayed in the browser when the resulting file—either HTML or MHTML—is viewed using that type of an application. For example, the speaker notes can either be displayed in the frameset or can be hidden from view. This is particularly useful when a speaker’s notes are not necessarily in a customer-ready format. It’s useful but not necessarily secure.

The author can also specify the title to be displayed in the browser. Although this defaults to the actual file name, or if that is missing, to the content of the first slide’s title placeholder, it can be overridden by the author.

Finally the author can specify a publish path to use when saving this file in this format. This is particularly useful for two reasons.

First, because there is a transformation happening, it sometimes takes a few iterations of publishing to get the browser-based experience to be exactly what you want. A classic example of this is the differing animation capabilities between the implementation and certain browsers: it is important to verify that the change in animation behavior continues to work after publishing; if you are not satisfied with the experience, sometimes you need to change the animation in the implementation and republish.

The second reason storing the path is useful is that web server paths can be cumbersome and are often not on the tip of each user’s tongue. This allows the user to specify the path once and then publish using the same location without having to re-specify it. Naturally, being stored in the file format, this allows this data to persist across session.

Indirectly, the HTML Publish properties can prime the Web Properties by defining a target web browser generation (i.e., third, fourth or third and fourth). This is done by setting the appropriate @ST_HtmlPublishWebBrowserSupport attribute:

<xsd:complexType name="CT_HtmlPublishProperties">
  <xsd:sequence>
    <xsd:group ref="EG_SlideListChoice" minOccurs="1" maxOccurs="1">
    </xsd:group>
  </xsd:sequence>
  <xsd:attribute name="showSpeakerNotes" type="xsd:boolean"
    use="optional" default="true" />
  <xsd:attribute name="pubBrowser"
    type="ST_HtmlPublishWebBrowserSupport"
    use="optional" default="v3v4" />
  <xsd:attribute name="title" type="xsd:string" use="optional"
    default="">
  </xsd:attribute>
    <xsd:attribute ref="r:id" use="required">
  </xsd:attribute>
</xsd:complexType>

By providing a target generation, the Web Properties will be set to a predefined package defined for the specified browser generation. Naturally, the user can override the individual Web Property settings.