csswg/css3-writing-modes bad-tate-chu-yoko.png,NONE,1.1 Overview.html,1.168,1.169 Overview.src.html,1.178,1.179

Update of /sources/public/csswg/css3-writing-modes
In directory hutz:/tmp/cvs-serv28944

Modified Files:
	Overview.html Overview.src.html 
Added Files:
	bad-tate-chu-yoko.png 
Log Message:
Switch scaling controls on text-combine-horizontal to an auto | scale | no-scale || use-glyphs model. Clarify various things in the processing requirements.

--- NEW FILE: bad-tate-chu-yoko.png ---
(This appears to be a binary file; contents omitted.)

Index: Overview.html
===================================================================
RCS file: /sources/public/csswg/css3-writing-modes/Overview.html,v
retrieving revision 1.168
retrieving revision 1.169
diff -u -d -r1.168 -r1.169
--- Overview.html	9 Jun 2011 17:05:26 -0000	1.168
+++ Overview.html	10 Jun 2011 14:51:05 -0000	1.169
@@ -29,7 +29,7 @@
 
    <h1>CSS Writing Modes Module Level 3</h1>
 
-   <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 9 June 2011</h2>
+   <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 10 June 2011</h2>
 
    <dl>
     <dt>This version:
@@ -37,7 +37,7 @@
     <dd><a
      href="http://dev.w3.org/csswg/css3-writing-modes/">http://dev.w3.org/csswg/css3-writing-modes/</a>
      <!--
-    <dd><a href="http://www.w3.org/TR/2011/WD-css3-writing-modes-20110609">http://www.w3.org/TR/2011/ED-css3-writing-modes-20110609/</a>
+    <dd><a href="http://www.w3.org/TR/2011/WD-css3-writing-modes-20110610">http://www.w3.org/TR/2011/ED-css3-writing-modes-20110610/</a>
 -->
      
 
@@ -137,6 +137,26 @@
    W3C Patent Policy</a>.</p>
   <!--end-status-->
 
+  <p>The following features are at-risk and may be dropped during CR:
+
+  <ul>
+   <li>The &lsquo;<a href="#use-glyph-orientation"><code
+    class=css>use-glyph-orientation</code></a>&rsquo; of &lsquo;<a
+    href="#text-orientation0"><code
+    class=property>text-orientation</code></a>&rsquo;
+
+   <li>The &lsquo;<code class=css>ascii-digits</code>&rsquo;, &lsquo;<code
+    class=css>digits</code>&rsquo;, &lsquo;<code
+    class=css>alpha</code>&rsquo;, &lsquo;<code
+    class=css>latin</code>&rsquo;, &lsquo;<code
+    class=css>alphanumeric</code>&rsquo;, &lsquo;<code
+    class=css>scale</code>&rsquo;, &lsquo;<code
+    class=css>no-scale</code>&rsquo;, and &lsquo;<code
+    class=css>use-glyphs</code>&rsquo; values of &lsquo;<a
+    href="#text-combine-horizontal"><code
+    class=property>text-combine-horizontal</code></a>&rsquo;.
+  </ul>
+
   <h2 class="no-num no-toc" id=Contents> Table of Contents</h2>
   <!--begin-toc-->
 
@@ -2782,8 +2802,9 @@
     <tr>
      <th>Value:
 
-     <td>none | all | [ digits &lt;integer>? || alpha &lt;integer>? ||
-      alphanumeric &lt;integer>? ] && [ use-glyphs | scale ]?
+     <td>none | all &lt;integer>? | [ [digits &lt;integer>? || ascii-digits
+      &lt;integer>? ] || [ alpha &lt;integer>? | latin &lt;integer>? ] ||
+      alphanumeric &lt;integer>? ] && [ scale | no-scale || use-digits ]?
 
     <tr>
      <th>Initial:
@@ -2817,10 +2838,7 @@
   </table>
 
   <p>This property allows the combination of multiple characters into the
-   space of a single character. For text layout purposes, e.g. bidi ordering,
-   line-breaking, emphasis marks, text-decoration, etc. the resulting
-   composition is treated as a single glyph representing the Object
-   Replacement Character U+FFFC. This property only has an effect in vertical
+   space of a single character. This property only has an effect in vertical
    writing modes. Values have the following meanings:
 
   <dl>
@@ -2834,9 +2852,9 @@
     element horizontally within the vertical line box, ideally within the
     space of one ideographic character. (See below.) The resulting
     composition is treated as a single glyph for the purposes of layout and
-    decoration. If the content contains any element boundaries, this is
-    treated as &lsquo;<code class=css>text-combine-horizontal:
-    none</code>&rsquo;.
+    decoration. If the content contains any element boundaries, or if it
+    contains more characters than the integer given (if any), this is treated
+    as &lsquo;<code class=css>text-combine-horizontal: none</code>&rsquo;.
 
    <dt><dfn id=digits title="text-combine-horizontal:digits">digits</dfn>
 
@@ -2845,7 +2863,19 @@
     integer is given) is treated as if it were in an anonymous inline box
     with &lsquo;<code class=css>text-combine-horizontal: all</code>&rsquo;.
     For this property, a digit is any character belonging to a Number
-    category (N*) that does not belong to a vertical script.
+    category (N*) that does not belong to a <a
+    href="#script-orientations">vertical script</a>.
+
+   <dt><dfn id=ascii-digits
+    title="text-combine-horizontal:ascii-digits">ascii-digits</dfn>
+
+   <dd>Within the element, each sequence of consecutive ASCII digits
+    (U+0030&ndash;U+0039) that has as many or fewer characters than the
+    integer given (or 2, if no integer is given) is treated as if it were in
+    an anonymous inline box with &lsquo;<code
+    class=css>text-combine-horizontal: all</code>&rsquo;.
+    <p class=issue>This definition is would replace &lsquo;<code
+     class=css>digits</code>&rsquo; as a simplification.
 
    <dt><dfn id=alpha title="text-combine-horizontal:alpha">alpha</dfn>
 
@@ -2854,8 +2884,19 @@
     integer is given) is treated as if it were in an anonymous inline box
     with &lsquo;<code class=css>text-combine-horizontal: all</code>&rsquo;.
     For this property, a horizonal letter is any character belonging to a
-    Letter category (L*) that is not East Asian Fullwidth or Wide, and that
-    does not belong to a vertical script.
+    Letter category (L*) that does not belong to a <a
+    href="#script-orientations">vertical script</a>.
+
+   <dt><dfn id=latin title="text-combine-horizontal:latin">latin</dfn>
+
+   <dd>Within the element, each sequence of Latin letters that has as many or
+    fewer characters than the integer given (or 2, if no integer is given) is
+    treated as if it were in an anonymous inline box with &lsquo;<code
+    class=css>text-combine-horizontal: all</code>&rsquo;. For this property,
+    a Latin letter is any character belonging to a Letter category (L*) that
+    also belongs to the Latin script.
+    <p class=issue>This definition is would replace &lsquo;<code
+     class=css>alpha</code>&rsquo; as a simplification.
 
    <dt><dfn id=alphanumeric
     title="text-combine-horizontal:alphanumeric">alphanumeric</dfn>
@@ -2869,20 +2910,31 @@
    <dt><dfn id=use-glyphs
     title="text-combine-horizontal:use-glyphs">use-glyphs</dfn>
 
-   <dd>If the UA has compressed glyphs available for the contents of the
+   <dd>If the UA has alternate-width glyphs available for the contents of the
     element, then it must use those glyphs to attempt sizing the contents to
-    1em square. For example, a two digit number may use halfwidth or
-    proportional glyphs, a three-digit number may use 1/3-em glyphs (if
-    available, else halfwidth glyphs), etc. If such glyphs are not available,
-    the UA must compress the composition horizontally until they fit within
-    1em width.
+    1em square. For example, a one-digit number would use a fullwidth glyph,
+    a two digit number would use halfwidth or proportional glyphs, a
+    three-digit number would use 1/3-em glyphs (if available, else halfwidth
+    or proportional glyphs), etc. If such glyphs are not available (and
+    &lsquo;<code class=css>no-scale</code>&rsquo; is not specified), the UA
+    must compress the composition horizontally until it fits within the width
+    tolerance of 1.1em.
 
    <dt><dfn id=scale title="text-combine-horizontal:scale">scale</dfn>
-    Compress the composition horizontally until it fits within 1em width.
+
+   <dd>Compress the composition horizontally until it fits within the width
+    tolerance (1.1em). Do not substitute alternate-width glyphs.
+
+   <dt><dfn id=no-scale
+    title="text-combine-horizontal:no-scale">no-scale</dfn>
+
+   <dd>Do not compress the composition or perform any glyph substitution in
+    order to make the composition fit within the tolerance. This may cause
+    the glyphs to overflow the line significantly.
   </dl>
 
-  <p class=issue>Do we need a tolerance value for scaling? (e.g. 1.1 instead
-   of 1em)
+  <p class=issue>All values except &lsquo;<code class=css>all</code>&rsquo;
+   are marked at-risk. Which ones should we take to CR?
 
   <p>When combining text as for &lsquo;<code
    class=css>text-combine-horizontal: all</code>&rsquo;, the glyphs of the
@@ -2894,7 +2946,16 @@
    purposes. The UA should center the glyphs horizontally and vertically
    within the measured 1em square. The baseline of the resulting composition
    chosen such that the square is centered between the content edges of its
-   parent inline box prior to any baseline alignment shift.
+   parent inline box prior to any baseline alignment shift. For text layout
+   purposes, e.g. bidi ordering, line-breaking, emphasis marks,
+   text-decoration, etc. the resulting composition is treated as a single
+   glyph representing the Object Replacement Character U+FFFC.
+
+  <p>If none of &lsquo;<code class=css>scale</code>&rsquo;, &lsquo;<code
+   class=css>no-scale</code>&rsquo;, or &lsquo;<code
+   class=css>use-glyphs</code>&rsquo; are specified and the contents are
+   wider than the width tolerance, the UA must compress the contents to
+   within the tolerance, but may use any method to do so.
 
   <p class=issue>Should this use a 1em height, or the height of 水? I.e. is
    the goal to fit in 1em height, or to fit in the height of an ideographic
@@ -2939,6 +3000,24 @@
    <p>In Japanese, this effect is known as <i lang=ja>tate-chu-yoko</i>.
   </div>
 
+  <div class=example>
+   <p>The following example shows that applying &lsquo;<code
+    class=css>text-combine-horizontal: digits</code>&rsquo; to an entire
+    document, rather than to a segment with a known type of numeric content,
+    can have unintended consequences:
+
+   <pre>&lt;p>あれは10,000円ですよ!&gt;/p></pre>
+
+   <div class=figure>
+    <p><img alt="Rendering of the above markup with 'text-combine-horizontal:
+     digits': the first two digits of the number are rendered as
+     tate-chu-yoko while the rest of the number is rendered sideways."
+     class=example src=bad-tate-chu-yoko.png>
+
+    <p class=caption>Example of mis-applied <i lang=ja>tate-chu-yoko</i></p>
+   </div>
+  </div>
+
   <h2 class=no-num id=changes>Changes</h2>
 
   <h3 class=no-num id=recent-changes> Changes from the <a
@@ -3812,8 +3891,9 @@
      <td><a class=property
       href="#text-combine-horizontal">text-combine-horizontal</a>
 
-     <td>none | all | [ digits &lt;integer>? || alpha &lt;integer>? ||
-      alphanumeric &lt;integer>? ] && [ use-glyphs | scale ]?
+     <td>none | all &lt;integer>? | [ [digits &lt;integer>? || ascii-digits
+      &lt;integer>? ] || [ alpha &lt;integer>? | latin &lt;integer>? ] ||
+      alphanumeric &lt;integer>? ] && [ scale | no-scale || use-digits ]?
 
      <td>none
 

Index: Overview.src.html
===================================================================
RCS file: /sources/public/csswg/css3-writing-modes/Overview.src.html,v
retrieving revision 1.178
retrieving revision 1.179
diff -u -d -r1.178 -r1.179
--- Overview.src.html	9 Jun 2011 17:05:26 -0000	1.178
+++ Overview.src.html	10 Jun 2011 14:51:05 -0000	1.179
@@ -71,6 +71,13 @@
 
 <!--status-->
 
+<p>The following features are at-risk and may be dropped during CR:
+<ul>
+  <li>The ''use-glyph-orientation'' of 'text-orientation'
+  <li>The ''ascii-digits'', ''digits'', ''alpha'', ''latin'', ''alphanumeric'',
+    ''scale'', ''no-scale'', and ''use-glyphs'' values of 'text-combine-horizontal'.
+</ul>
+
 <h2 class="no-num no-toc" id="Contents">
 Table of Contents</h2>
 
@@ -2074,9 +2081,11 @@
       </tr>
       <tr>
         <th>Value:</th>
-        <td>none | all |
-            [ digits &lt;integer>? || alpha &lt;integer>? || alphanumeric &lt;integer>? ]
-            && [ use-glyphs | scale ]?</td>
+        <td>none | all &lt;integer>? |
+            [  [digits &lt;integer>? || ascii-digits &lt;integer>? ]
+            || [ alpha &lt;integer>? | latin &lt;integer>? ]
+            || alphanumeric &lt;integer>? ]
+            && [ scale | no-scale || use-digits ]?</td>
       </tr>
       <tr>
         <th>Initial:</th>
@@ -2106,10 +2115,7 @@
   </table>
 
   <p>This property allows the combination of multiple characters into the
-    space of a single character. For text layout purposes, e.g. bidi
-    ordering, line-breaking, emphasis marks, text-decoration, etc. the
-    resulting composition is treated as a single glyph representing the
-    Object Replacement Character U+FFFC. This property only has an effect
+    space of a single character. This property only has an effect
     in vertical writing modes. Values have the following meanings:</p>
 
   <dl>
@@ -2121,7 +2127,8 @@
       within the space of one ideographic character. (See below.) The
       resulting composition is treated as a single glyph for the purposes
       of layout and decoration.
-      If the content contains any element boundaries, this is treated as
+      If the content contains any element boundaries, or if it contains
+      more characters than the integer given (if any), this is treated as
       ''text-combine-horizontal: none''.
     <dt><dfn title="text-combine-horizontal:digits">digits</dfn>
     <dd>Within the element, each sequence of consecutive horizontal digits
@@ -2129,33 +2136,57 @@
       if no integer is given) is treated as if it were in an anonymous inline
       box with ''text-combine-horizontal: all''.
       For this property, a digit is any character belonging to a Number
-      category (N*) that does not belong to a vertical script.
+      category (N*) that does not belong to a
+      <a href="#script-orientations">vertical script</a>.
+    <dt><dfn title="text-combine-horizontal:ascii-digits">ascii-digits</dfn>
+    <dd>Within the element, each sequence of consecutive ASCII digits (U+0030&ndash;U+0039)
+      that has as many or fewer characters than the integer given (or 2,
+      if no integer is given) is treated as if it were in an anonymous inline
+      box with ''text-combine-horizontal: all''.
+      <p class="issue">This definition is would replace ''digits'' as a simplification.
     <dt><dfn title="text-combine-horizontal:alpha">alpha</dfn>
     <dd>Within the element, each sequence of consecutive horizontal letters
       that has as many or fewer characters than the integer given (or 2,
       if no integer is given) is treated as if it were in an anonymous inline
       box with ''text-combine-horizontal: all''.
       For this property, a horizonal letter is any character belonging to
-      a Letter category (L*) that is not East Asian Fullwidth or Wide, and
-      that does not belong to a vertical script.
+      a Letter category (L*) that does not belong to a
+      <a href="#script-orientations">vertical script</a>.
+    <dt><dfn title="text-combine-horizontal:latin">latin</dfn>
+    <dd>Within the element, each sequence of Latin letters
+      that has as many or fewer characters than the integer given (or 2,
+      if no integer is given) is treated as if it were in an anonymous inline
+      box with ''text-combine-horizontal: all''.
+      For this property, a Latin letter is any character belonging to
+      a Letter category (L*) that also belongs to the Latin script.
+      <p class="issue">This definition is would replace ''alpha'' as a simplification.
     <dt><dfn title="text-combine-horizontal:alphanumeric">alphanumeric</dfn>
     <dd>Within the element, each sequence of consecutive horizontal digits and/or
       letters that has as many or fewer characters than the integer given (or 2,
       if none is given) is treated as if it were in an anonymous inline box
       with ''text-combine-horizontal: all''.
     <dt><dfn title="text-combine-horizontal:use-glyphs">use-glyphs</dfn>
-    <dd>If the UA has compressed glyphs available for the contents of the
-      element, then it must use those glyphs to attempt sizing the
-      contents to 1em square. For example, a two digit number may use
-      halfwidth or proportional glyphs, a three-digit number may use 1/3-em glyphs
-      (if available, else halfwidth glyphs), etc.
-      If such glyphs are not available, the UA must compress the composition
-      horizontally until they fit within 1em width.
+    <dd>If the UA has alternate-width glyphs available for the contents
+      of the element, then it must use those glyphs to attempt sizing the
+      contents to 1em square.
+      For example, a one-digit number would use a fullwidth glyph, a two
+      digit number would use halfwidth or proportional glyphs, a three-digit
+      number would use 1/3-em glyphs (if available, else halfwidth or
+      proportional glyphs), etc.
+      If such glyphs are not available (and ''no-scale'' is not specified),
+      the UA must compress the composition horizontally until it fits within
+      the width tolerance of 1.1em.
     <dt><dfn title="text-combine-horizontal:scale">scale</dfn>
-      Compress the composition horizontally until it fits within 1em width.
+    <dd>Compress the composition horizontally until it fits within 
+      the width tolerance (1.1em). Do not substitute alternate-width glyphs.
+    <dt><dfn title="text-combine-horizontal:no-scale">no-scale</dfn>
+    <dd>Do not compress the composition or perform any glyph substitution
+      in order to make the composition fit within the tolerance. This may
+      cause the glyphs to overflow the line significantly.
   </dl>
 
-  <p class="issue">Do we need a tolerance value for scaling? (e.g. 1.1 instead of 1em)
+  <p class="issue">All values except ''all'' are marked at-risk. Which
+    ones should we take to CR?</p>
 
   <p>When combining text as for ''text-combine-horizontal: all'', the
     glyphs of the combined text are stacked horizontally (without line
@@ -2167,7 +2198,15 @@
     horizontally and vertically within the measured 1em square.
     The baseline of the resulting composition chosen such that the
     square is centered between the content edges of its parent inline
-    box prior to any baseline alignment shift.
+    box prior to any baseline alignment shift. For text layout purposes,
+    e.g. bidi ordering, line-breaking, emphasis marks, text-decoration,
+    etc. the resulting composition is treated as a single glyph
+    representing the Object Replacement Character U+FFFC.
+
+  <p>If none of ''scale'', ''no-scale'', or ''use-glyphs'' are specified
+    and the contents are wider than the width tolerance, the UA must
+    compress the contents to within the tolerance, but may use any
+    method to do so.
 
   <p class="issue">Should this use a 1em height, or the height of 水?
     I.e. is the goal to fit in 1em height, or to fit in the height of
@@ -2203,6 +2242,20 @@
     <p>In Japanese, this effect is known as <i lang="ja">tate-chu-yoko</i>.
   </div>
 
+  <div class="example">
+    <p>The following example shows that applying ''text-combine-horizontal: digits''
+      to an entire document, rather than to a segment with a known type of
+      numeric content, can have unintended consequences:
+    <pre>&lt;p>あれは10,000円ですよ!&gt;/p></pre>
+    <div class="figure">
+      <p><img alt="Rendering of the above markup with 'text-combine-horizontal: digits':
+                   the first two digits of the number are rendered as tate-chu-yoko
+                   while the rest of the number is rendered sideways."
+              class="example" src="bad-tate-chu-yoko.png">
+      <p class="caption">Example of mis-applied <i lang="ja">tate-chu-yoko</i></p>
+    </div>
+  </div>
+
 <h2 class="no-num" id="changes">Changes</h2>
   <h3 class="no-num" id="recent-changes">
   Changes from the <a href="http://www.w3.org/TR/2011/WD-css3-writing-modes-20110531/">May

Received on Friday, 10 June 2011 14:51:10 UTC