csswg/css3-text Overview.html,1.112,1.113 Overview.src.html,1.210,1.211

Update of /sources/public/csswg/css3-text
In directory hutz:/tmp/cvs-serv3111

Modified Files:
	Overview.html Overview.src.html 
Log Message:
Rewrite prose for 'text-spacing' to be agnostic wrt adding space or removing space.

Index: Overview.html
===================================================================
RCS file: /sources/public/csswg/css3-text/Overview.html,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -d -r1.112 -r1.113
--- Overview.html	19 Apr 2011 18:25:14 -0000	1.112
+++ Overview.html	20 Apr 2011 00:49:20 -0000	1.113
@@ -83,14 +83,14 @@
 
    <h1>CSS Text Level 3</h1>
 
-   <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 19 April 2011</h2>
+   <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 20 April 2011</h2>
 
    <dl>
     <dt>This version:
 
     <dd><a href="http://dev.w3.org/csswg/css3-text/Overview.html">$Date:
-     2011/04/19 17:16:46 $ (CVS $Revision$)</a> <!--
-      <dd><a href="http://www.w3.org/TR/2011/WD-css3-text-20110419/">http://www.w3.org/TR/2011/WD-css3-text-20110419/</a></dd>
+     2011/04/19 18:25:14 $ (CVS $Revision$)</a> <!--
+      <dd><a href="http://www.w3.org/TR/2011/WD-css3-text-20110420/">http://www.w3.org/TR/2011/WD-css3-text-20110420/</a></dd>
     -->
      
 
@@ -3573,88 +3573,120 @@
      <td>specified value
   </table>
 
-  <p>This property determines spacing between two characters classes. The
-   spacing may either be created or trimmed. Values are defined as follows:
+  <p>This property controls spacing between adjacent characters within the
+   same inline formatting context using a set of character-class-based rules.
+   Such spacing can either be created between or trimmed from the affected
+   glyphs. Values are defined as follows:
 
   <dl>
    <dt><dfn id=normal5 title="text-spacing:normal">normal</dfn>
 
-   <dd>Trim (kern) the blank half of fullwidth closing punctuation at the end
-    of each line if it does not otherwise fit prior to justification.</dd>
-   <!--
-      <dd>Equivalent to &lsquo;<code class=css>space-start allow-end justify</code>&rsquo;.</dd>
-      -->
+   <dd>Specifies the baseline behavior (defined below).
+    <!-- Equivalent to ''space-start allow-end justify'' -->
 
    <dt><dfn id=trim-start title="text-spacing:trim-start">trim-start</dfn>
 
-   <dd>Trim (kern) the blank half of fullwidth opening punctuation at the
-    beginning of each line.</dd>
-   <!--
+   <dd>Set fullwidth opening punctuation flush at the start of each line. The
+    UA must trim the blank half of fullwidth punctuation glyphs if necessary.
+    <!--
       <dt><dfn title="text-spacing:space-start">space-start</dfn></dt>
-      <dd>Do not trim the blank half of fullwidth opening punctuation at
-        the beginning of each line.</dd>
+        <dd>Set fullwidth opening punctuation at full width at the start
+          of each line. The UA must blank space to fullwidth
+          punctuation if they are not already full width.
       -->
-   <!--
+    <!--
       <dt><dfn title="text-spacing:allow-end">allow-end</dfn></dt>
-      <dd>Trim (kern) the blank half of fullwidth closing punctuation at
-        the end of each line if it does not otherwise fit prior to
-        justification.</dd>
+        <dd>Set fullwidth closing punctuation flush at the end of each
+          line if it does not otherwise fit prior to justification.
+          The UA must trim the blank half of fullwidth punctuation
+          glyphs if necessary.
       -->
+    
 
    <dt><dfn id=trim-end title="text-spacing:trim-end">trim-end</dfn>
 
-   <dd>Trim (kern) the blank half of fullwidth closing punctuation at the end
-    of each line.
-
-   <dt><dfn id=space-end title="text-spacing:keep-end">space-end</dfn>
-
-   <dd>Do not trim the blank half of fullwidth closing punctuation at the end
-    of each line.
+   <dd>Set fullwidth closing punctuation flush at the end of each line. The
+    UA must trim the blank half of fullwidth punctuation glyphs if necessary.
 
-   <dt><dfn id=no-justify title="text-spacing:no-justify">no-justify</dfn>
+   <dt><dfn id=space-end title="text-spacing:space-end">space-end</dfn>
 
-   <dd>The blank portions of fullwidth punctuation must not be trimmed during
-    the justification process. (If this value is not specified, the
-    justification process may trim the blank portions of fullwidth
-    punctuation glyphs.) <span class=note> An example of compression rules is
-    given for Japanese in 3.8 Line Adjustment in <a href="#JLREQ"
-    rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a>.</span>
+   <dd>Set fullwidth opening punctuation at full width at the start of each
+    line. The UA must add blank space to fullwidth punctuation if they are
+    not already full width.
 
    <dt><dfn id=ideograph-alpha
     title="text-spacing:ideograph-alpha">ideograph-alpha</dfn>
 
    <dd>Creates 1/4em extra spacing between runs of ideographic letters and
     non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or
-    Hebrew. <span class=note>A commonly used algorithm for determining this
-    behavior is specified in <a href="#JLREQ"
+    Hebrew. Unless &lsquo;<code class=css>no-justify</code>&rsquo; is also
+    specified, this autospacing may be altered by the justification process.
+    <span class=note>A commonly used algorithm for determining this behavior
+    is specified in <a href="#JLREQ"
     rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a></span>
 
    <dt><dfn id=ideograph-numeric
     title="text-spacing:ideograph-numeric">ideograph-numeric</dfn>
 
    <dd>Creates 1/4em extra spacing between runs of ideographic letters and
-    non-ideographic numeric glyphs. <span class=note>A commonly used
-    algorithm for determining this behavior is specified in <a href="#JLREQ"
-    rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a></span>
+    non-ideographic numeric glyphs. Unless &lsquo;<code
+    class=css>no-justify</code>&rsquo; is also specified, this autospacing
+    may be altered by the justification process. <span class=note>A commonly
+    used algorithm for determining this behavior is specified in <a
+    href="#JLREQ" rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a></span>
 
    <dt><dfn id=punctuation title="text-spacing:punctuation">punctuation</dfn>
     
 
    <dd>Creates extra non-breaking spacing around punctuation as required by
-    language-specific typographic conventions. For example, if the element's
+    language-specific typographic conventions. In CSS3, if the element's
     content language is French, narrow no-break space (U+202F) and no-break
-    space (U+00A0) should be inserted where required by <a
+    space (U+00A0) is be inserted where required by <a
     href="http://unicode.org/udhr/n/notes_fra.html">French typographic
-    guidelines</a>.
+    guidelines</a>. Otherwise this value has no effect. However future
+    specifications may add automatic spacing behavior for other languages.
+
+   <dt><dfn id=no-justify title="text-spacing:no-justify">no-justify</dfn>
+
+   <dd>Justification may not alter text-spacing. (If this value is not
+    specified, the justification process may alter autospacing.) <span
+    class=note> An example of compression rules is given for Japanese in 3.8
+    Line Adjustment in <a href="#JLREQ"
+    rel=biblioentry>[JLREQ]<!--{{JLREQ}}--></a>.</span>
   </dl>
 
-  <p>In all cases, the UA must trim (kern) the blank half of fullwidth
-   opening punctuation if its previous adjacent character is a fullwidth
-   opening punctuation, fullwidth middle dot punctuation, fullwidth closing
-   punctuation, or ideographic space (U+3000). It must also trim (kern) the
-   blank half of fullwidth closing punctuation if its next adjacent character
-   is a fullwidth closing punctuation, fullwidth middle dot punctuation, or
-   ideographic space (U+3000).
+  <p>In the baseline behavior the UA must:
+
+  <ul>
+   <li>Set fullwidth opening punctuation at full width at the start of each
+    line. (This can require adding space to punctuation glyphs.) This
+    behavior can be overridden by specifying &lsquo;<code
+    class=css>trim-start</code>&rsquo;.
+
+   <li>Set fullwidth closing punctuation flush at the end of each line if it
+    does not otherwise fit prior to justification. (This can require trimming
+    the blank half of fullwidth punctuation glyphs.) This behavior can be
+    overridden by specifying &lsquo;<code class=css>space-end</code>&rsquo;
+    or &lsquo;<code class=css>trim-end</code>&rsquo;.
+
+   <li>Set fullwidth opening punctuation at half width if the previous
+    character is a fullwidth opening punctuation, fullwidth middle dot
+    punctuation, fullwidth closing punctuation, or ideographic space
+    (U+3000). Else set it at full width and, unless &lsquo;<code
+    class=css>no-justify</code>&rsquo; is specified, allow justification to
+    alter this spacing.
+
+   <li>Set fullwidth closing punctuation at half width if the previous
+    character is a fullwidth closing punctuation, fullwidth middle dot
+    punctuation, or ideographic space (U+3000). Else set it at full width
+    and, unless &lsquo;<code class=css>no-justify</code>&rsquo; is specified,
+    allow justification to alter this spacing.
+  </ul>
+
+  <p>Depending on the font system, text-spacing may require either trimming
+   (kerning) the blank half of fullwidth punctuation glyphs (if they must be
+   set flush / at half width), or adding 1/2em of space to the glyphs (if
+   they must be set at full width). When set at full width
 
   <div class=example>
    <p>The following example table lists the punctuation pairs affected by
@@ -3815,11 +3847,10 @@
     </ul>
   </dl>
 
-  <p>Fullwidth opening and closing punctuation must not be trimmed if the
-   glyph is not actually fullwidth. This includes the case where the glyph is
-   not fullwidth as a result of the kerning in the font. A fullwidth glyph is
-   one that has the same advance width as a typical Han character in the same
-   font.
+  <p>Fullwidth punctuation must not be trimmed if the glyph is not actually
+   fullwidth. This includes the case where the glyph is not fullwidth as a
+   result of the kerning in the font. A fullwidth glyph is one that has the
+   same advance width as a typical Han character in the same font.
 
   <p>Whether fullwidth colon punctuation and fullwidth dot punctuation should
    be considered fullwidth closing punctuation or fullwidth middle dot
@@ -3891,10 +3922,6 @@
     standard convention is often not followed.</p>
   </div>
 
-  <p>When creating extra spacing, the added width does not correspond to the
-   insertion of additional space characters, but instead to the width
-   increment of existing glyphs.
-
   <p>This property is additive with the &lsquo;<a href="#word-spacing0"><code
    class=property>word-spacing</code></a>&rsquo; and &lsquo;<a
    href="#letter-spacing0"><code
@@ -3907,11 +3934,11 @@
    &lsquo;<a href="#word-spacing0"><code
    class=property>word-spacing</code></a>&rsquo;.
 
-  <p>This property applies only to the same inline element context, and can
-   apply across elements if in the same inline element context.
-
-  <p>At element boundaries, the font size of the extra spacing is given by
-   and rendered within the innermost element that contains the boundary.
+  <p>At element boundaries, the amount of extra spacing introduced between
+   characters is determined by and rendered within the innermost element that
+   contains the boundary. If the extra spacing is applied to a particular
+   glyph, then the spacing is determined by the innermost element containing
+   that glyph.
 
   <p>Support for this property is <em>optional</em>. It is strongly
    recommended for UAs that wish to support CJK typography.
@@ -6915,9 +6942,6 @@
        <li>text-spacing:ideograph-numeric, <a href="#ideograph-numeric"
         title="text-spacing:ideograph-numeric"><strong>9.3.</strong></a>
 
-       <li>text-spacing:keep-end, <a href="#space-end"
-        title="text-spacing:keep-end"><strong>9.3.</strong></a>
-
        <li>text-spacing:no-justify, <a href="#no-justify"
         title="text-spacing:no-justify"><strong>9.3.</strong></a>
 
@@ -6927,6 +6951,9 @@
        <li>text-spacing:punctuation, <a href="#punctuation"
         title="text-spacing:punctuation"><strong>9.3.</strong></a>
 
+       <li>text-spacing:space-end, <a href="#space-end"
+        title="text-spacing:space-end"><strong>9.3.</strong></a>
+
        <li>text-spacing:trim-end, <a href="#trim-end"
         title="text-spacing:trim-end"><strong>9.3.</strong></a>
 

Index: Overview.src.html
===================================================================
RCS file: /sources/public/csswg/css3-text/Overview.src.html,v
retrieving revision 1.210
retrieving revision 1.211
diff -u -d -r1.210 -r1.211
--- Overview.src.html	19 Apr 2011 18:25:14 -0000	1.210
+++ Overview.src.html	20 Apr 2011 00:49:23 -0000	1.211
@@ -2650,76 +2650,104 @@
       </tbody>
     </table>
 
-    <p>This property determines spacing between two characters classes.
-      The spacing may either be created or trimmed. 
+    <p>This property controls spacing between adjacent characters
+      within the same inline formatting context using a set of
+      character-class-based rules.
+      Such spacing can either be created between or trimmed from the
+      affected glyphs.
       Values are defined as follows:</p>
 
     <dl>
       <dt><dfn title="text-spacing:normal">normal</dfn></dt>
-      <dd>Trim (kern) the blank half of fullwidth closing punctuation at
-        the end of each line if it does not otherwise fit prior to
-        justification.</dd>
-      <!--
-      <dd>Equivalent to ''space-start allow-end justify''.</dd>
-      -->
+        <dd>Specifies the baseline behavior (defined below).
+          <!-- Equivalent to ''space-start allow-end justify'' -->
       <dt><dfn title="text-spacing:trim-start">trim-start</dfn></dt>
-      <dd>Trim (kern) the blank half of fullwidth opening punctuation at
-        the beginning of each line. </dd>
+        <dd>Set fullwidth opening punctuation flush at the start of each
+          line. The UA must trim the blank half of fullwidth punctuation
+          glyphs if necessary.
       <!--
       <dt><dfn title="text-spacing:space-start">space-start</dfn></dt>
-      <dd>Do not trim the blank half of fullwidth opening punctuation at
-        the beginning of each line.</dd>
+        <dd>Set fullwidth opening punctuation at full width at the start
+          of each line. The UA must blank space to fullwidth
+          punctuation if they are not already full width.
       -->
       <!--
       <dt><dfn title="text-spacing:allow-end">allow-end</dfn></dt>
-      <dd>Trim (kern) the blank half of fullwidth closing punctuation at
-        the end of each line if it does not otherwise fit prior to
-        justification.</dd>
+        <dd>Set fullwidth closing punctuation flush at the end of each
+          line if it does not otherwise fit prior to justification.
+          The UA must trim the blank half of fullwidth punctuation
+          glyphs if necessary.
       -->
       <dt><dfn title="text-spacing:trim-end">trim-end</dfn></dt>
-      <dd>Trim (kern) the blank half of fullwidth closing punctuation at
-        the end of each line.</dd>
-      <dt><dfn title="text-spacing:keep-end">space-end</dfn></dt>
-      <dd>Do not trim the blank half of fullwidth closing punctuation at
-        the end of each line. </dd>
-      <dt><dfn title="text-spacing:no-justify">no-justify</dfn></dt>
-      <dd>The blank portions of fullwidth punctuation must not be trimmed
-         during the justification process. (If this value is not specified,
-         the justification process may trim the blank portions of fullwidth
-         punctuation glyphs.)
-        <span class="note">
-          An example of compression rules is given for Japanese in
-          3.8 Line Adjustment in [[JLREQ]].</span>
-        </dd>
+        <dd>Set fullwidth closing punctuation flush at the end of each
+          line. The UA must trim the blank half of fullwidth punctuation
+          glyphs if necessary.</dd>
+      <dt><dfn title="text-spacing:space-end">space-end</dfn></dt>
+        <dd>Set fullwidth opening punctuation at full width at the start
+          of each line. The UA must add blank space to fullwidth
+          punctuation if they are not already full width.</dd>
       <dt><dfn title="text-spacing:ideograph-alpha">ideograph-alpha</dfn></dt>
         <dd>Creates 1/4em extra spacing between runs of ideographic letters and
-          non-ideographic letters, such as Latin-based, Cyrillic, Greek, Arabic or Hebrew.
+          non-ideographic letters, such as Latin-based, Cyrillic, Greek,
+          Arabic or Hebrew.
+          Unless ''no-justify'' is also specified, this autospacing may
+          be altered by the justification process.
           <span class="note">A commonly used algorithm for determining this
             behavior is specified in [[JLREQ]]</span>
         </dd>
       <dt><dfn title="text-spacing:ideograph-numeric">ideograph-numeric</dfn></dt>
         <dd>Creates 1/4em extra spacing between runs of ideographic letters and
           non-ideographic numeric glyphs.
+          Unless ''no-justify'' is also specified, this autospacing may
+          be altered by the justification process.
           <span class="note">A commonly used algorithm for determining this
             behavior is specified in [[JLREQ]]</span>
         </dd>
       <dt><dfn title="text-spacing:punctuation">punctuation</dfn>
         <dd>Creates extra non-breaking spacing around punctuation as required by
-          language-specific typographic conventions. For example, if the
+          language-specific typographic conventions. In CSS3, if the
           element's content language is French, narrow no-break space (U+202F)
-          and no-break space (U+00A0) should be inserted where required by
+          and no-break space (U+00A0) is be inserted where required by
           <a href="http://unicode.org/udhr/n/notes_fra.html">French typographic
           guidelines</a>.
+          Otherwise this value has no effect. However future specifications
+          may add automatic spacing behavior for other languages.
+      <dt><dfn title="text-spacing:no-justify">no-justify</dfn></dt>
+        <dd>Justification may not alter text-spacing. (If this value is not
+           specified, the justification process may alter autospacing.)
+        <span class="note">
+          An example of compression rules is given for Japanese in
+          3.8 Line Adjustment in [[JLREQ]].</span>
+        </dd>
     </dl>
 
-    <p>In all cases, the UA must trim (kern) the blank half of fullwidth
-      opening punctuation if its previous adjacent character is a
-      fullwidth opening punctuation, fullwidth middle dot punctuation,
-      fullwidth closing punctuation, or ideographic space (U+3000).
-      It must also trim (kern) the blank half of fullwidth closing
-      punctuation if its next adjacent character is a fullwidth closing
-      punctuation, fullwidth middle dot punctuation, or ideographic
-      space (U+3000).</p>
+    <p>In the baseline behavior the UA must:
+    <ul>
+      <li>Set fullwidth opening punctuation at full width at the start
+        of each line. (This can require adding space to punctuation glyphs.)
+        This behavior can be overridden by specifying ''trim-start''.
+      <li>Set fullwidth closing punctuation flush at the end of each
+        line if it does not otherwise fit prior to justification.
+        (This can require trimming the blank half of fullwidth punctuation
+        glyphs.) This behavior can be overridden by specifying ''space-end''
+        or ''trim-end''.
+      <li>Set fullwidth opening punctuation at half width if the previous
+        character is a fullwidth opening punctuation, fullwidth middle dot
+        punctuation, fullwidth closing punctuation, or ideographic space
+        (U+3000). Else set it at full width and, unless ''no-justify'' is
+        specified, allow justification to alter this spacing.
+      <li>Set fullwidth closing punctuation at half width if the previous
+        character is a fullwidth closing punctuation, fullwidth middle dot
+        punctuation, or ideographic space (U+3000). Else set it at full
+        width and, unless ''no-justify'' is specified, allow justification
+        to alter this spacing.
+    </ul>
+
+    <p>Depending on the font system, text-spacing may require either
+      trimming (kerning) the blank half of fullwidth punctuation glyphs
+      (if they must be set flush / at half width), or adding 1/2em of
+      space to the glyphs (if they must be set at full width). When set
+      at full width</p>
 
     <div class="example">
       <p>The following example table lists the punctuation pairs affected by
@@ -2824,12 +2852,10 @@
       </dd>
     </dl>
 
-    <p>Fullwidth opening and closing punctuation must not be trimmed if the
-      glyph is not actually fullwidth.
-      This includes the case where the glyph is not fullwidth
-      as a result of the kerning in the font.
-      A fullwidth glyph is one that has the
-      same advance width as a typical Han character in the same font.</p>
+    <p>Fullwidth punctuation must not be trimmed if the glyph is not actually
+      fullwidth. This includes the case where the glyph is not fullwidth
+      as a result of the kerning in the font. A fullwidth glyph is one that
+      has the same advance width as a typical Han character in the same font.</p>
 
     <p>Whether fullwidth colon punctuation and fullwidth dot punctuation should
       be considered fullwidth closing punctuation or fullwidth middle dot
@@ -2868,20 +2894,16 @@
         standard convention is often not followed.</p>
     </div>
 
-    <p>When creating extra spacing, the added width does not correspond to
-      the insertion of additional space characters, but instead to the width
-      increment of existing glyphs.</p>
-
     <p>This property is additive with the 'word-spacing' and 'letter-spacing'
       properties. That is, the amount of spacing contributed by the
       'letter-spacing' setting (if any) is added to the spacing created by
       'text-spacing'. The same applies to 'word-spacing'.
 
-    <p>This property applies only to the same inline element context,
-      and can apply across elements if in the same inline element context.</p>
-
-    <p>At element boundaries, the font size of the extra spacing
-      is given by and rendered within the innermost element that contains the boundary.</p>
+    <p>At element boundaries, the amount of extra spacing introduced
+      between characters is determined by and rendered within the innermost
+      element that contains the boundary. If the extra spacing is applied
+      to a particular glyph, then the spacing is determined by the innermost
+      element containing that glyph.
 
     <p>Support for this property is <em>optional</em>. It is strongly
       recommended for UAs that wish to support CJK typography.</p>

Received on Wednesday, 20 April 2011 00:49:28 UTC