Re: [css3-writing-modes] text-orientation:upright

Shinyu Murakami wrote:

> First, I was surprised at this. Brackets and dashes with “forced
> upright” will be useless.

The idea behind this is that values of 'text-orientation' are either
defined based on the MVO data for the default value, 'mixed-right', or
an author specifies the orientation for specific text spans.  So
'upright' means upright, 'sideways-right' means sideways, without any
modulation based on the codepoint.

> My concern here is that the actual orientation will be font
> dependent and that causes serious problem when we set
> ‘text-orientation: upright’ for arrows (←↑→↓↖↗↘↙ etc.) and pointing
> indexes (☜☝☞☟ etc.). These characters are rotated (MVO=R) in default
> ‘text-orientation: mixed-right’ and we will often want to set
> upright for these characters (e.g. for “⇧UP”). If fonts do not have
> rotated vertical glyphs we will get the expected results, but
> unfortunately most CJK fonts have rotated vertical glyphs for some
> arrows, and it is font-dependent which arrows are rotated.

What you're saying is right but I don't think it's really so much of
an issue in actual practice.  If you're suggesting that the value
'upright' should *not* enable the use of vertical alternates, then
there will be a whole different set of problems with characters that
*require* the use of vertical alternates (ideographic punctuation,
square katakana, etc.).

If there are given codepoints for which an author is concerned about
the use of vertical alternates, such as the arrow codepoints you list,
they can always explicitly disable vertical alternates for text runs
containing those codepoints:

  text-orientation: upright;
  font-feature-settings: "vert" off;

The CSS3 Fonts spec defines explicit precedence rules for how features
are applied in this case, the value of 'font-feature-settings' always
overrides feature settings implied by other properties, so with the
properties above the orientation will never vary depending on the font.

> Should we recommend to use the ‘text-combine-horizontal’ property
> instead of ‘text-orientation’?

No, that's an abuse of that property.  Use 'font-feature-settings'
instead to explicitly disable vertical alternates.

That said, I don't think this will be needed in most cases, since this
is really an edge case.  As more devices are available with fonts that
are more consistent about their use of vertical alternates (i.e. a
world without MS Gothic), the need to worry about this edge case will
also evaporate.


John Daggett

Received on Tuesday, 18 September 2012 06:39:13 UTC