3232
3333 < h1 > CSS Writing Modes Module Level 3</ h1 >
3434
35- < h2 class ="no-num no-toc " id =longstatus-date > Editor's Draft 20 August 2011</ h2 >
35+ < h2 class ="no-num no-toc " id =longstatus-date > Editor's Draft 26 August 2011</ h2 >
3636
3737 < dl >
3838 < dt > This version:
3939
4040 < dd > < a
4141 href ="http://dev.w3.org/csswg/css3-writing-modes/ "> http://dev.w3.org/csswg/css3-writing-modes/</ a >
4242 <!--
43- <dd><a href="http://www.w3.org/TR/2011/WD-css3-writing-modes-20110820 ">http://www.w3.org/TR/2011/ED-css3-writing-modes-20110820 /</a>
43+ <dd><a href="http://www.w3.org/TR/2011/WD-css3-writing-modes-20110826 ">http://www.w3.org/TR/2011/ED-css3-writing-modes-20110826 /</a>
4444-->
4545
4646
@@ -156,13 +156,13 @@ <h2 class="no-num no-toc" id=status> Status of this document</h2>
156156 < li > The ‘< code class =css > ascii-digits</ code > ’, ‘< code
157157 class =css > digits</ code > ’, ‘< code
158158 class =css > alpha</ code > ’, ‘< code
159- class =css > latin</ code > ’, ‘< code
160- class =css > alphanumeric</ code > ’, ‘< code
161- class =css > compress</ code > ’, ‘< code
162- class =css > no-compress</ code > ’, and ‘< code
163- class =css > use-glyphs</ code > ’ values of ‘< a
164- href ="#text-combine-horizontal "> < code
159+ class =css > latin</ code > ’, and ‘< code
160+ class =css > alphanumeric</ code > ’ values of ‘< a
161+ href ="#text-combine-horizontal0 "> < code
165162 class =property > text-combine-horizontal</ code > </ a > ’.
163+
164+ < li > The ‘< a href ="#text-combine-mode "> < code
165+ class =property > text-combine-mode</ code > </ a > ’ property
166166 </ ul >
167167
168168 < h2 class ="no-num no-toc " id =Contents > Table of Contents</ h2 >
@@ -295,8 +295,16 @@ <h2 class="no-num no-toc" id=Contents> Table of Contents</h2>
295295 page progression direction</ a >
296296
297297 < li > < a href ="#text-combine "> < span class =secno > 9. </ span > Glyph
298- Composition: the ‘< code
299- class =property > text-combine-horizontal</ code > ’ property</ a >
298+ Composition</ a >
299+ < ul class =toc >
300+ < li > < a href ="#text-combine-horizontal "> < span class =secno > 9.1. </ span >
301+ Horizonal-in-Vertical Composition: the ‘< code
302+ class =property > text-combine-horizontal</ code > ’ property</ a >
303+
304+ < li > < a href ="#text-combine-horizontal "> < span class =secno > 9.2. </ span >
305+ Horizonal-in-Vertical Glyph Scaling: the ‘< code
306+ class =property > text-combine-mode</ code > ’ property</ a >
307+ </ ul >
300308
301309 < li class =no-num > < a href ="#changes "> Changes</ a >
302310 < ul class =toc >
@@ -2839,23 +2847,26 @@ <h2 id=page-direction><span class=secno>8. </span> Page Flow: the page
28392847 second half of a spread, e.g. on the right page in a left-to-right page
28402848 progression.)
28412849
2842- < h2 id =text-combine > < span class =secno > 9. </ span > Glyph Composition: the
2843- ‘< a href ="#text-combine-horizontal "> < code
2844- class =property > text-combine-horizontal</ code > </ a > ’ property</ h2 >
2850+ < h2 id =text-combine > < span class =secno > 9. </ span > Glyph Composition</ h2 >
2851+
2852+ < h3 id =text-combine-horizontal > < span class =secno > 9.1. </ span >
2853+ Horizonal-in-Vertical Composition: the ‘< a
2854+ href ="#text-combine-horizontal0 "> < code
2855+ class =property > text-combine-horizontal</ code > </ a > ’ property</ h3 >
28452856
28462857 < table class =propdef >
28472858 < tbody >
28482859 < tr >
28492860 < th > Name:
28502861
2851- < td > < dfn id =text-combine-horizontal > text-combine-horizontal</ dfn >
2862+ < td > < dfn id =text-combine-horizontal0 > text-combine-horizontal</ dfn >
28522863
28532864 < tr >
28542865 < th > Value:
28552866
28562867 < td > none | all | [ [digits <integer> | ascii-digits <integer> ] ||
28572868 [ alpha <integer> | latin <integer> ] || alphanumeric
2858- <integer> ] && [ compress | [ no-compress || use-glyphs ] ]?
2869+ <integer> ]
28592870
28602871 < tr >
28612872 < th > Initial:
@@ -2955,34 +2966,11 @@ <h2 id=text-combine><span class=secno>9. </span> Glyph Composition: the
29552966 and/or letters that has as many or fewer characters than the integer
29562967 given is treated as if it were in an anonymous inline box with
29572968 ‘< code class =css > text-combine-horizontal: all</ code > ’.
2958-
2959- < dt > < dfn id =use-glyphs
2960- title ="text-combine-horizontal:use-glyphs "> use-glyphs</ dfn >
2961-
2962- < dd > If the UA has alternate-width glyphs available for the contents of the
2963- element, then it must use those glyphs to attempt sizing the contents to
2964- 1em square. See below.
2965-
2966- < dt > < dfn id =compress
2967- title ="text-combine-horizontal:compress "> compress</ dfn >
2968-
2969- < dd > Compress the composition (horizontally) as a whole until it fits
2970- within 1em. Do not substitute alternate-width glyphs.
2971-
2972- < dt > < dfn id =no-compress
2973- title ="text-combine-horizontal:no-compress "> no-compress</ dfn >
2974-
2975- < dd > Do not compress the composition or perform any glyph substitution in
2976- order to make the composition fit within 1em. This may cause the glyphs
2977- to overflow the line significantly. When combined with ‘< code
2978- class =css > use-glyphs</ code > ’, this indicates to perform glyph
2979- substitution if possible per ‘< code
2980- class =css > use-glyphs</ code > ’ but not to compress the glyphs if they
2981- do not fit within the size constraints.
29822969 </ dl >
29832970
29842971 < p class =issue > All values except ‘< code class =css > all</ code > ’
2985- are marked at-risk. Which ones should we take to CR?
2972+ and ‘< code class =css > none</ code > ’ are marked at-risk. Which
2973+ ones should we take to CR?
29862974
29872975 < p > When combining text as for ‘< code
29882976 class =css > text-combine-horizontal: all</ code > ’, the glyphs of the
@@ -3000,36 +2988,6 @@ <h2 id=text-combine><span class=secno>9. </span> Glyph Composition: the
30002988 composition is treated as a single glyph representing the Object
30012989 Replacement Character U+FFFC.
30022990
3003- < p > If none of ‘< code class =css > compress</ code > ’, ‘< code
3004- class =css > no-compress</ code > ’, or ‘< code
3005- class =css > use-glyphs</ code > ’ are specified and the contents are
3006- wider than 1em, the UA must attempt to fit the contents within 1em, but
3007- may use any method to do so.
3008-
3009- < p > If ‘< code class =css > use-glyphs</ code > ’ is specified the UA
3010- must attempt to substitute narrower glyphs as necessary to make the
3011- composition fit within 1em:
3012-
3013- < ul >
3014- < li > a two-character composition would use 1/2-em or proportional glyphs
3015-
3016- < li > a three-character composition would use 1/3-em glyphs (if the font
3017- supports this feature, else fall back to 1/2-em or proportional glyphs)
3018-
3019- < li > etc.
3020- </ ul >
3021-
3022- < p > Since even fonts that have fractional-width glyphs available do not have
3023- such glyphs for all characters, if ‘< code
3024- class =css > no-compress</ code > ’ is not specified, the UA must ensure
3025- the expected advance width for ‘< code
3026- class =css > use-glyphs</ code > ’ by either compressing or padding
3027- (equally on both sides) each glyph individually if it does not match the
3028- required advance width. If ‘< code
3029- class =css > no-compress</ code > ’ is specified, then the UA must not
3030- attempt to adjust the width of the glyph even if it differs from the
3031- expected dimension. This may cause the combined text to overflow.
3032-
30332991 < p > In some fonts, the ideographic glyphs are given a compressed design such
30342992 that they are 1em wide but shorter than 1em tall. To accommodate such
30352993 fonts, the UA may vertically scale the contents of the composition to
@@ -3049,7 +3007,7 @@ <h2 id=text-combine><span class=secno>9. </span> Glyph Composition: the
30493007
30503008 < div class =example >
30513009 < p > In East Asian documents, the ‘< a
3052- href ="#text-combine-horizontal "> < code
3010+ href ="#text-combine-horizontal0 "> < code
30533011 class =css > text-combine-horizontal</ code > </ a > ’ effect is often used
30543012 to display Latin-based strings such as components of a date or letters of
30553013 an initialism, always in a horizontal writing mode regardless of the
@@ -3097,6 +3055,106 @@ <h2 id=text-combine><span class=secno>9. </span> Glyph Composition: the
30973055 </ div >
30983056 </ div >
30993057
3058+ < h3 id =text-combine-horizontal > < span class =secno > 9.2. </ span >
3059+ Horizonal-in-Vertical Glyph Scaling: the ‘< a
3060+ href ="#text-combine-mode "> < code
3061+ class =property > text-combine-mode</ code> </ a > ’ property</ h3 >
3062+
3063+ < table class =propdef >
3064+ < tbody >
3065+ < tr >
3066+ < th > Name:
3067+
3068+ < td > < dfn id =text-combine-mode > text-combine-mode</ dfn >
3069+
3070+ < tr >
3071+ < th > Value:
3072+
3073+ < td > auto | compress | [ no-compress || use-glyphs ]
3074+
3075+ < tr >
3076+ < th > Initial:
3077+
3078+ < td > none
3079+
3080+ < tr >
3081+ < th > Applies to:
3082+
3083+ < td > non-replaced inline elements
3084+
3085+ < tr >
3086+ < th > Inherited:
3087+
3088+ < td > yes
3089+
3090+ < tr >
3091+ < th > Percentages:
3092+
3093+ < td > N/A
3094+
3095+ < tr >
3096+ < th > Media:
3097+
3098+ < td > visual
3099+
3100+ < tr >
3101+ < th > Computed value:
3102+
3103+ < td > specified value
3104+ </ table >
3105+
3106+ < p > This property controls how multiple characters are combined into the
3107+ space of a single character when specified to do so via ‘<<
2B0
/span>a
3108+ href ="#text-combine-horizontal0 "> < code
3109+ class =property > text-combine-horizontal</ code > </ a > ’. Values have the
3110+ following meanings:
3111+
3112+ < dl >
3113+ < dt > < dfn id =auto title ="text-combine-mode:auto "> auto</ dfn >
3114+
3115+ < dd > If the contents are wider than 1em, the UA must attempt to fit the
3116+ contents within 1em, but may use any method to do so.
3117+
3118+ < dt > < dfn id =compress title ="text-combine-mode:compress "> compress</ dfn >
3119+
3120+ < dd > Compress the composition (horizontally) as a whole until it fits
3121+ within 1em. Do not substitute alternate-width glyphs.
3122+
3123+ < dt > < dfn id =use-glyphs
3124+ title ="text-combine-mode:use-glyphs "> use-glyphs</ dfn >
3125+
3126+ < dd > Attempt to substitute narrower glyphs as necessary to make the
3127+ composition fit within 1em:
3128+ < ul >
3129+ < li > a two-character composition uses 1/2-em or proportional glyphs
3130+
3131+ < li > a three-character composition uses 1/3-em glyphs (if the font
3132+ supports this feature, else fall back to 1/2-em or proportional glyphs)
3133+
3134+
3135+ < li > etc.
3136+ </ ul >
3137+
3138+ < p > Since even fonts that have fractional-width glyphs available do not
3139+ have such glyphs for all characters, the UA must ensure the expected
3140+ advance width for ‘< code class =css > use-glyphs</ code > ’ by
3141+ either compressing or padding (equally on both sides) each glyph
3142+ individually if it does not match the required advance width. (This step
3143+ does not apply if ‘< code class =css > no-compress</ code > ’ is
3144+ specified.)
3145+
3146+ < dt > < dfn id =no-compress
3147+ title ="text-combine-mode:no-compress "> no-compress</ dfn >
3148+
3149+ < dd > Do not compress the composition or perform any glyph substitution in
3150+ order to make the composition fit within 1em. When combined with
3151+ ‘< code class =css > use-glyphs</ code > ’, however, this indicates
3152+ to perform glyph substitution if possible per ‘< code
3153+ class =css > use-glyphs</ code > ’ but not to compress the glyphs if they
3154+ do not fit the size requirements. This value may cause the glyphs to
3155+ overflow the line significantly.
3156+ </ dl >
3157+
31003158 < h2 class =no-num id =changes > Changes</ h2 >
31013159
31023160 < h3 class =no-num id =recent-changes > Changes from the < a
@@ -3135,7 +3193,7 @@ <h3 class=no-num id=recent-changes> Changes from the <a
31353193 href ="#vertical-typesetting-details "> synthesis rules</ a > , etc.
31363194
31373195 < li > Renamed ‘< code class =property > text-combine</ code > ’
3138- property to ‘< a href ="#text-combine-horizontal "> < code
3196+ property to ‘< a href ="#text-combine-horizontal0 "> < code
31393197 class =property > text-combine-horizontal</ code > </ a > ’ and added
31403198 ability to auto-combine by character classes. Added many more details on
31413199 how to compose horizontal-in-vertical text.
@@ -3435,9 +3493,9 @@ <h2 class=no-num id=vertical-typesetting-details>Appendix C: Vertical
34353493 of these are present, the font is considered to have vertical font
34363494 settings available.
34373495
3438- < p class =issue > It is a Unicode error that ScriptExt .txt does not include
3439- the Aegean and Common Indic characters listed above as exceptions; they
3440- shouldn't need special treatment once this is fixed.
3496+ < p class =issue > It is a Unicode error that ScriptExtensions .txt does not
3497+ include the Aegean and Common Indic characters listed above as exceptions;
3498+ they shouldn't need special treatment once this is fixed.
34413499
34423500 < h2 class =no-num id =intrinsic-sizing > Appendix D: Intrinsic Dimensions</ h2 >
34433501
@@ -4041,11 +4099,26 @@ <h2 class=no-num id=property-index> Property Index</h2>
40414099
40424100 < tr >
40434101 < th > < a class =property
4044- href ="#text-combine-horizontal "> text-combine-horizontal</ a >
4102+ href ="#text-combine-horizontal0 "> text-combine-horizontal</ a >
40454103
40464104 < td > none | all | [ [digits <integer> | ascii-digits <integer> ] ||
40474105 [ alpha <integer> | latin <integer> ] || alphanumeric
4048- <integer> ] && [ compress | [ no-compress || use-glyphs ] ]?
4106+ <integer> ]
4107+
4108+ < td > none
4109+
4110+ < td > non-replaced inline elements
4111+
4112+ < td > yes
4113+
4114+ < td > N/A
4115+
4116+ < td > visual
4117+
4118+ < tr >
4119+ < th > < a class =property href ="#text-combine-mode "> text-combine-mode</ a >
4120+
4121+ < td > auto | compress | [ no-compress || use-glyphs ]
40494122
40504123 < td > none
40514124
0 commit comments