This is an old revision of the document!


UTR #50 Review Memo

This page is a memo page to make our discussion on UTR #50 smooth.

Analysis by Codepoint

Codes used for analysis by codepoint:

CodeUTR50MSFTMeaning
UUSUpright; translates between horizontal and vertical
RSRSideways; rotates between horizontal and vertical
TUTSTTypeset upright with alternate glyph. Best fallback is just upright.
TRSBRTTypeset upright with alternate glyph. Best fallback is just sideways.
V??Upright wrt Unicode code charts, but translates between horizontal and vertical

Two modes are presented: Stacked (text-orientation: upright) and Mixed (text-orientation: mixed)

General CategoryStackMixedMemo
Other, Control (Cc)RR:?: undefined in stacked mode
Other, Format (Cf)RR:?: undefined in stacked mode
Other, Private Use (Co)UU Bias for East Asian use, since other usage is unknown
Other, Surrogate (Cs)RR:?: no need to define?
M*Follows grapheme cluster
L* and N* See Letters and Numbers Orientation By Codepoint
P* and Z* See Punctuation Orientation By Codepoint
S* See Symbols Orientation by Codepoint

Potential categories to support special behavior:

  • Math relational operators (equals, greater-than, etc)
  • SB brackets

Comparisons

General

  • PRI #207 review period ends on Oct 24th, 2011 — way too short
  • Eric mentioned that UTR #50 is for Japanese text and should define Hangul orientation that appears in Japanese text, rather than Hangul native orientation. Our goal of “upright-right” is a good vertical text flow for East Asian. Are we seeing things differently?
  • UTR #50 only tries “some level of compatibility with existing fonts”. Again, this is very different from our goals, isn't this?
  • UTR #50 defines not only glyph orientation in vertical text flow but also character spacing classes in horizontal text flow, similar to what we have in the text-spacing property. Shouldn't this be a separate discussion? Review period is too short for such a big property.
  • UTR #50's suggested grapheme clusterization is a) imprecise b) doesn't handle exceptions in Me and Zs categories
  • Should add categories for tailorable vs. not tailorable, e.g. Phags-pa and Ideographic are not tailorable to rotate.
  • OpenType feature for sideways vertical glyphs would be critical to allow calligraphic and condensed fonts to work with this scheme.

The East Asian Orientation Property

  • What are the definitions of U, S, SB, and T? (Tk is gone)
    • Which one allows font designers to put alternate glyphs; i.e., UA applies vert feature?
    • Maybe most of the following issues are related with the fundamental question: “what are the goals of UTR #50”. If it's for font designers to decide visual glyph orientations to put in vert table, some of these problems are gone, and CSS WG still needs to develop our own algorithm to decide orientation for UAs to render, which could be different from visual glyph orientation.
  • From what I understand, T allows anything; from changing glyph to changing orientations, so although “representative glyphs” are shown, their orientations are undefined in UTR #50. Some rotate, some do not, and it's up to font designer. Is this correct understanding?
  • If UTR #50 means fonts should not change glyphs/positions for U/S/SB, there are compatibility and font designing problems here.
    • Some fonts use different glyphs for parenthesis/brackets in vertical flow; e.g., U+FF62/FF63. kodomonoji_20111005-en.png
    • Some fonts use U+301D/301F glyphs for U+201C/201D in vertical flow.
    • Some fonts use GPOS to adjust positions of punctuation in vertical flow.
    • For brush-stroke fonts, start and end edges of strokes (起筆/収筆 in Japanese) vary by flow direction for several glyphs, just like it does for U+30FC, because the direction brush moves is different; e.g., suzuedo.png
  • Issues with non-square fonts:
    • U does not work with proportional or non-square fonts. If a font is condensed (tall) in horizontal flow, it needs to be condensed (wide) in vertical flow; e.g., AXIS fonts
    • S/SB does not work with slanted fonts; e.g., susha.png
  • Does the baseline alignment work good by just rotation?
    • EM DASH, Arrows, etc. aligns at center baseline?
    • Most font designers I contacted believe that it's ok as long as the font is a square font, but I'm worried as it has never been tested at all.

Yi, Mongolian, Hangul, Bopomofo, Egyp

Tailoring

CSS would need to define some tailorings, should the Unicode spec include them too? E.g.

  • upright-cyrillic
  • upright-greek
  • upright-latin
  • upright-letterlike
  • sideways-symbols
  • upright-math
  • upright-numeric
  • sideways-unified-punctuation-type-stuff?

The East Asian Class Property

Not reviewed yet.

Historical

 
spec/utr50.1343703305.txt.gz · Last modified: 2014/12/09 15:48 (external edit)
Recent changes RSS feed Valid XHTML 1.0 Valid CSS Driven by DokuWiki