Re: [css3-writing-modes] simpler values for text-orientation

On 08/15/2013 07:29 PM, John Daggett wrote:
>
> The behavior of the initial value of the 'text-orientation' property
> has changed over time.  It's now basically, "decide the orientation
> based on the UTR50 value for the codepoint".  Basically, the user
> agent will try and apply a good default.  Authors use non-initial
> values to control orientation for a specific text subspan.
>
> Given this, I think it would make more sense to use 'auto' rather than
> the current initial value 'mixed'. An 'auto' value implies that the
> user agent does its best to choose a good default.  It's something
> authors who know CSS are accustomed to and I think it's a natural fit
> here. The name 'mixed' communicates very little here and it introduces
> yet another new value name that authors need to understand.

I think it's actually clearer than 'auto'. The text orientation is
mixed: it is neither all upright, nor all sideways.

The orientations are a good default, but since they're based on
codepoints, they're not like other 'auto' values where we compute
something based on various other inputs to layout. I don't really
see the need to change.

But, I can bring this up with the WG if you feel strongly about it.

> The current set of values for 'text-orientation' is also rather large
> now, more than is really necessary I think:
>
> text-orientation: mixed | upright | sideways-right | sideways-left | sideways | use-glyph-orientation
>
> I also think we should simply omit 'sideways-left', 'sideways-right'
> and 'use-glyph-orientation'.  The 'sideways' value already covers
> typical usage based on the 'writing-mode' value - it's
> 'sideways-right' for right-to-left vertical text runs and
> 'sideways-left' for left-to-right vertical text runs.  I think it only
> adds author confusion to have three different sideways values.
>
> So I would suggest reducing the set of values to:
>
> text-orientation: auto | upright | sideways;
>
> Much, much simpler!

'sideways' covers typical usage for most horizontal scripts
being typeset in a vertical orientation, e.g. in a table
caption. But we actually do need the explicit values for
some other cases:

   - In Mongolian, 'sideways-right' is needed for cases not handled
     by 'mixed', because horizontal scripts are rotated 90cw, not
     90ccw.

   - There are examples of RTL scripts being typeset top-to-bottom
     in Chinese, so 'sideways-left' is needed to create this effect.

   - These values also exist to be able to typeset more obscure
     scripts correctly that we aren't handling in 'mixed' due to
     the bidi complications of having to LTR scripts typeset in
     opposing directions.

So, while most authors will be satisfied with the three you mention,
the others are also necessary.

Please let me know if that's an acceptable explanation, or if you
want to raise this as an issue with the WG.

> P.S. As for 'use-glyph-orientation', this is already marked at risk so
> I would suggest that it simply be omitted unless there's clear
> developer interest in supporting this.

This is needed to support SVG content that uses the 'glyph-orientation'
property. We gave it an obscure keyword and marked it at-risk, as you
requested, but I don't think it's appropriate to remove it unless we
have some better solution for describing the way 'glyph-orientation'
and 'text-orientation' interact. (That would be nice. This one is kinda
awkward.)

~fantasai

Received on Saturday, 17 August 2013 00:02:21 UTC