[css3-writing-modes] use case for font-dependent default orientation

During the call this week, we discussed the definition of default
orientation in the CSS3 Writing Modes spec.  The current draft has a
definition in Appendix C [1] but Eric Muller of Adobe has proposed making
an explicit Unicode property that defines categories for use in
determining the default orientation [2].

To view the differences in key Unicode blocks, I've put together a data file
that illustrates the characters affected by these differences:

http://lists.w3.org/Archives/Public/www-archive/2011Sep/att-0010/defaultorientation.pdf

The second and third columns are the classification in the proposed
Unicode property and using the Appendix C algorithm, along with
vertical alternates if they exist for three standard Japanese fonts. 
S indicates sideways orientation, U indicates upright and UF indicates
it's dependent on the font.

This last category is one of the key differences between Eric's
proposed property values and the definition in Appendix C.  The
current definition in the spec has rules that define orientation such
that for some characters the orientation is defined as dependent on
whether a font has vertical font metrics or not; if a font has
vertical metrics then these characters will be displayed upright and
vertical alternates will be used if available, otherwise the
characters are drawn sideways.

This rule adds a lot of complexity to vertical layout, it means that
an implementation needs to first do font matching, then break up text
runs into sideways and vertical runs. What are the set of use cases
for this?  And does this rule really solve those use cases, or just
fix some cases while breaking others?

When I asked last month, Koji explained the existence of a vertical
alternate glyph for a given codepoint indicates that a font designer
thinks that codepoint should be set upright using that alternate glyph
[3].  But the Appendix C algorithm is keyed off whether vertical
metrics exist for a font, not whether there's a vertical alternate.

The majority of these "use font" codepoints appear to be brackets or
other punctuation characters in Unicode common blocks but many often
lack vertical alternates so I don't see that this is solving much for
those characters.

What are the specific use cases for special handling these characters?
Are these primarily for Chinese?  And are there no alternative
codepoints in the ideographic punctutation or fullwidth blocks that
would actually be more natural for authors to use (i.e. the default
characters when using an input method)?

For example, the parentheses, braces and brackets tagged as "use font"
in the Basic Latin block almost never have vertical alternates.  But
their analogues in the Halfwidth and Fullwidth Forms block
(U+FF00-FFEF) usually do, at least for Japanese fonts.  Similarly, are there
punctuation marks from the General Punctuation block (U+2000-20FF)
that are preferred to the marks in the CJK Symbols and Punctuation
block (U+3000-303F) or fullwidth block? This is important because
codepoints in the CJK and fullwidth blocks are naturally upright and
the existence of vertical alternates is much more consistent compared
to codepoints in the general block.

Regards,

John Daggett

[1] http://dev.w3.org/csswg/css3-writing-modes/#vertical-typesetting-details
[2] http://lists.w3.org/Archives/Public/www-style/2011Sep/0003.html
[3] http://lists.w3.org/Archives/Public/www-style/2011Aug/0353.html

Received on Friday, 9 September 2011 08:35:22 UTC