Text-Related Properties

The first property stores information related to the Kinsoku settings. Kinsoku settings define the list of characters that are not allowed to start or end a line of text for a given East Asian language.

The schema definition of the Kinsoku settings is relatively straightforward: identify the language, the set of invalid start characters, and the set of invalid end characters:

<xsd:complexType name="CT_Kinsoku">
  <xsd:attribute name="lang" type="xsd:string" use="optional">
  </xsd:attribute>
  <xsd:attribute name="invalStChars" type="xsd:string" use="required">
  </xsd:attribute>
  <xsd:attribute name="invalEndChars" type="xsd:string" use="required">
  </xsd:attribute>
</xsd:complexType>

The second property stores a flag to use strict characters for starting and ending a line of Japanese text. Naturally, this is a simple Boolean attribute:

<xsd:attribute name="strictFirstAndLastChars"
  type="xsd:boolean" use="optional" default="true"/>

The final text-related property stores information related to any fonts that are embedded in the presentation. To do this, we need to store a list of embedded fonts that reference each part that stores font data (generally, there is a one-font-to-one-part mapping, although this is not a strict rule). This information is defined using three complex types:

<xsd:complexType name="CT_EmbeddedFontList">
  <xsd:sequence>
    <xsd:element name="embeddedFont" type="CT_EmbeddedFontListEntry"
        minOccurs="0" maxOccurs="unbounded" />
  </xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CT_EmbeddedFontListEntry">
  <xsd:sequence>
    <xsd:element name="font" type="a:CT_TextFont" minOccurs="1"
      maxOccurs="1" />
    <xsd:element name="regular" type="CT_EmbeddedFontDataId"
      minOccurs="0" maxOccurs="1"/>
    <xsd:element name="bold" type="CT_EmbeddedFontDataId"
      minOccurs="0" maxOccurs="1"/>
    <xsd:element name="italic" type="CT_EmbeddedFontDataId"
      minOccurs="0" maxOccurs="1"/>
    <xsd:element name="boldItalic" type="CT_EmbeddedFontDataId"
      minOccurs="0" maxOccurs="1" />
  </xsd:sequence>
</xsd:complexType>
<xsd:complexType name="CT_EmbeddedFontDataId" >
  <xsd:attribute ref="r:id" use="required"/>
</xsd:complexType>