--- a/ttml2/spec/rnc/ttml2-datatypes.rnc Mon Jan 05 21:21:55 2015 -0700
+++ b/ttml2/spec/rnc/ttml2-datatypes.rnc Wed Jan 07 18:44:07 2015 -0700
@@ -120,6 +120,9 @@
"none" |
"normal"
+TTAF.FontShear.datatype =
+ string
+
TTAF.FontSize.datatype =
string
--- a/ttml2/spec/rnc/ttml2-styling-attribs.rnc Mon Jan 05 21:21:55 2015 -0700
+++ b/ttml2/spec/rnc/ttml2-styling-attribs.rnc Wed Jan 07 18:44:07 2015 -0700
@@ -34,6 +34,8 @@
= attribute tts:fontKerning { TTAF.FontKerning.datatype }?
TTAF.fontSize.attrib
= attribute tts:fontSize { TTAF.FontSize.datatype }?
+TTAF.fontShear.attrib
+ = attribute tts:fontShear { TTAF.FontShear.datatype }?
TTAF.fontStyle.attrib
= attribute tts:fontStyle { TTAF.FontStyle.datatype }?
TTAF.fontVariantPosition.attrib
@@ -109,6 +111,7 @@
TTAF.extent.attrib,
TTAF.fontFamily.attrib,
TTAF.fontKerning.attrib,
+ TTAF.fontShear.attrib,
TTAF.fontSize.attrib,
TTAF.fontStyle.attrib,
TTAF.fontVariantPosition.attrib,
--- a/ttml2/spec/ttml2-changes.html Mon Jan 05 21:21:55 2015 -0700
+++ b/ttml2/spec/ttml2-changes.html Wed Jan 07 18:44:07 2015 -0700
@@ -90,6 +90,7 @@
'tts:border',
'tts:fontKerning,
'tts:fontSelectionStrategy',
+ 'tts:fontShear,
'tts:fontVariantPosition',
'tts:height,
'tts:letterSpacing,
@@ -238,6 +239,8 @@
* In 10.2, add 'tts:fontSelectionStrategy styling attribute.
+* In 10.2, add 'tts:fontShear styling attribute.
+
* In 10.2, add 'tts:fontVariantPosition' attribute.
* In 10.2, add 'tts:height styling attribute.
@@ -275,30 +278,30 @@
* In 10.2.12, add 'p' element to enumeration of element types to which
tts:fontFamily applies.
-* In 10.2.14, add 'p' element to enumeration of element types to which
+* In 10.2.16, add 'p' element to enumeration of element types to which
tts:fontSize applies.
-* In 10.2.15, add 'p' element to enumeration of element types to which
+* In 10.2.17, add 'p' element to enumeration of element types to which
tts:fontStyle applies.
-* In 10.2.17, add 'p' element to enumeration of element types to which
+* In 10.2.19, add 'p' element to enumeration of element types to which
tts:fontWeight applies.
-* In 10.2.19, specify algorithm for resolving the 'normal' value of
+* In 10.2.22, specify algorithm for resolving the 'normal' value of
tts:lineHeight that takes into account the use of per-font-metrics for
ascent, descent, and line gap, using 125% of font size as a fall back.
-* In 10.2.20, add content elements to enumeration of element types to which
+* In 10.2.23, add content elements to enumeration of element types to which
tts:opacity applies.
-* In 10.2.21, add 'div' and 'p' elements to enumeration of element types to
+* In 10.2.24, add 'div' and 'p' elements to enumeration of element types to
which tts:origin applies. Define semantics that causes the use of tts:origin
to generate an implied inline region.
-* In 10.2.23, add content elements to enumeration of element types to which
+* In 10.2.26, add content elements to enumeration of element types to which
tts:padding applies.
-* In 10.2.30, add 'span' to enumeration of element types to which
+* In 10.2.33, add 'span' to enumeration of element types to which
tts:textAlign applies.
* In 10.3, add <border-color>, <border-style>, and <border-width>
--- a/ttml2/spec/ttml2.xml Mon Jan 05 21:21:55 2015 -0700
+++ b/ttml2/spec/ttml2.xml Wed Jan 07 18:44:07 2015 -0700
@@ -2990,6 +2990,7 @@
<loc href="#style-attribute-fontFamily">tts:fontFamily</loc>,
<loc href="#style-attribute-fontKerning">tts:fontKerning</loc>,
<loc href="#style-attribute-fontSelectionStrategy">tts:fontSelectionStrategy</loc>,
+<loc href="#style-attribute-fontShear">tts:fontShear</loc>,
<loc href="#style-attribute-fontSize">tts:fontSize</loc>,
<loc href="#style-attribute-fontStyle">tts:fontStyle</loc>,
<loc href="#style-attribute-fontVariantPosition">tts:fontVariantPosition</loc>,
@@ -7210,6 +7211,7 @@
<item><p><specref ref="style-attribute-extent"/></p></item>
<item><p><specref ref="style-attribute-fontFamily"/></p></item>
<item><p><specref ref="style-attribute-fontKerning"/></p></item>
+<item><p><specref ref="style-attribute-fontShear"/></p></item>
<item><p><specref ref="style-attribute-fontSelectionStrategy"/></p></item>
<item><p><specref ref="style-attribute-fontSize"/></p></item>
<item><p><specref ref="style-attribute-fontStyle"/></p></item>
@@ -8458,7 +8460,6 @@
§ 7.9.2.</p>
</note>
</div3>
-
<div3 id="style-attribute-fontKerning">
<head>tts:fontKerning</head>
<p>The <att>tts:fontKerning</att> attribute is used to specify a style property that
@@ -8539,6 +8540,77 @@
character to glyph mapping.</edtext>
</ednote>
</div3>
+
+<div3 id="style-attribute-fontShear">
+<head>tts:fontShear</head>
+<p>The <att>tts:fontShear</att> attribute is used to specify a style property that
+determines whether and how a shear transformation is applied to glyph areas.</p>
+<p>This attribute may be specified by any element type
+that permits use of attributes in the TT Style Namespace; however, this attribute applies
+as a style property only to those element types indicated in the following table.</p>
+<table id="style-property-details-fontShear" role="common">
+<col width="25%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-length"><percentage></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>0%</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>see prose</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete, continuous</td>
+</tr>
+</tbody>
+</table>
+<p>If the value of this attribute is <code>0%</code>, then no shear transformation is applied; if the value is <code>100%</code>, then a 2D shear transformation
+of 90 degrees is applied in the axis associated with the inline progression direction; if the value is <code>-100%</code>, then a shear transformation
+of -90 degrees is applied. If the absolute value of the specified percentage is greater than 100%, then it must be interpreted as if 100% were specified with
+the appropriate sign.</p>
+<p>If the inline progression direction corresponds to the X axis, then the 2D shear transformation is described by the following matrix:</p>
+<eg xml:space="preserve">
+| 1 <emph>a</emph> 0 |
+| 0 1 0 |
+| 0 0 1 |
+</eg>
+<p>where <emph>a</emph> is equal to the tangent of the shear angle.</p>
+<p>If the inline progression direction corresponds to the Y axis, then the 2D shear transformation is described by the following matrix:</p>
+<eg xml:space="preserve">
+| 1 0 0 |
+| <emph>a</emph> 1 0 |
+| 0 0 1 |
+</eg>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> element is considered to be enclosed in an anonymous
+span.</p>
+<p>The <att>tts:fontShear</att> style is illustrated by the following
+example.</p>
+<ednote>
+<name>Font Shear Example</name>
+<date>2015-01-07</date>
+<edtext>Insert example fragment and image of tts:fontShear.</edtext>
+</ednote>
+</div3>
+
<div3 id="style-attribute-fontSize">
<head>tts:fontSize</head>
<p>The <att>tts:fontSize</att> attribute is used to specify a style property
@@ -11581,6 +11653,8 @@
<item><p><specref ref="style-value-length"/></p></item>
<item><p><specref ref="style-value-measure"/></p></item>
<item><p><specref ref="style-value-namedColor"/></p></item>
+<item><p><specref ref="style-value-number"/></p></item>
+<item><p><specref ref="style-value-percentage"/></p></item>
<item><p><specref ref="style-value-position"/></p></item>
</ulist>
<p>In the syntax representations defined in this section, no
@@ -12117,29 +12191,10 @@
<eg xml:space="preserve">
<length>
: scalar
- | percentage
+ | <loc href="#style-value-percentage"><percentage></loc>
scalar
- : number units
-
-percentage
- : number "%"
-
-sign
- : "+" | "-"
-
-number
- : sign? non-negative-number
-
-non-negative-number
- : non-negative-integer
- | non-negative-real
-
-non-negative-integer
- : <loc href="#style-value-digit"><digit></loc>+
-
-non-negative-real
- : <loc href="#style-value-digit"><digit></loc>* "." <loc href="#style-value-digit"><digit></loc>+
+ : <loc href="#style-value-percentage"><number></loc> units
units
: "px"
@@ -12180,7 +12235,6 @@
the length <code>25vmin</code> is interpreted as the minimum of 25% of the width and
25% of the height of the <loc href="#terms-root-container-region">root container region</loc>.</p>
</div3>
-
<div3 id="style-value-measure">
<head><measure></head>
<p>A <measure> value expresses a distance used to measure an allocation
@@ -12264,7 +12318,6 @@
</gitem>
</glist>
</div3>
-
<div3 id="style-value-namedColor">
<head><namedColor></head>
<p>A <namedColor> is used to express an RGBA color with a convenient name, and where the applicable color space is
@@ -12306,6 +12359,55 @@
subset of the set of named colors specified by <bibref ref="svg11"/>, § 4.2.</p>
</note>
</div3>
+<div3 id="style-value-number">
+<head><number></head>
+<p>An <number> expression is used to express an arbitrary, signed integer or real valued number.</p>
+<table id="number-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <number></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<number>
+ : sign? non-negative-number
+
+sign
+ : "+" | "-"
+
+number
+
+non-negative-number
+ : non-negative-integer
+ | non-negative-real
+
+non-negative-integer
+ : <loc href="#style-value-digit"><digit></loc>+
+
+non-negative-real
+ : <loc href="#style-value-digit"><digit></loc>* "." <loc href="#style-value-digit"><digit></loc>+
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-percentage">
+<head><percentage></head>
+<p>An <percentage> expression is used to express an arbitrary, signed integral or real valued percentage.</p>
+<table id="percentage-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <percentage></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<percentage>
+ : <loc href="#style-value-number"><number></loc> "%"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
<div3 id="style-value-position">
<head><position></head>
<p>A <position> expression is used to indirectly determine the origin of an area or an image with respect to a reference area.</p>
--- a/ttml2/spec/xsd/ttml2-datatypes.xsd Mon Jan 05 21:21:55 2015 -0700
+++ b/ttml2/spec/xsd/ttml2-datatypes.xsd Wed Jan 07 18:44:07 2015 -0700
@@ -170,6 +170,12 @@
<xs:simpleType name="fontRange">
<xs:restriction base="xs:string"/>
</xs:simpleType>
+ <xs:simpleType name="fontShear">
+ <xs:annotation>
+ <xs:documentation>percentage</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
<xs:simpleType name="fontSize">
<xs:annotation>
<xs:documentation>length | length length</xs:documentation>
--- a/ttml2/spec/xsd/ttml2-styling-attribs.xsd Mon Jan 05 21:21:55 2015 -0700
+++ b/ttml2/spec/xsd/ttml2-styling-attribs.xsd Wed Jan 07 18:44:07 2015 -0700
@@ -17,6 +17,7 @@
<xs:attribute name="extent" type="ttd:extent"/>
<xs:attribute name="fontFamily" type="ttd:fontFamily"/>
<xs:attribute name="fontKerning" type="ttd:fontKerning"/>
+ <xs:attribute name="fontShear" type="ttd:fontShear"/>
<xs:attribute name="fontSize" type="ttd:fontSize"/>
<xs:attribute name="fontStyle" type="ttd:fontStyle"/>
<xs:attribute name="fontVariantPosition" type="ttd:fontVariantPosition"/>
@@ -58,6 +59,7 @@
<xs:attribute ref="tts:extent"/>
<xs:attribute ref="tts:fontFamily"/>
<xs:attribute ref="tts:fontKerning"/>
+ <xs:attribute ref="tts:fontShear"/>
<xs:attribute ref="tts:fontSize"/>
<xs:attribute ref="tts:fontStyle"/>
<xs:attribute ref="tts:fontVariantPosition"/>