W3C home > Mailing lists > Public > www-style@w3.org > January 2007

RE: [CSS3 Text Layout] working draft (compact version)

From: Paul Nelson (ATC) <paulnel@winse.microsoft.com>
Date: Sun, 7 Jan 2007 21:57:49 -0800
Message-ID: <49C257E2C13F584790B2E302E021B6F90ECD1B98@winse-msg-01.segroup.winse.corp.microsoft.com>
To: Christopher Tom <cctom@hawaii.rr.com>, <www-style@w3.org>

Elika's document should not be the only document you consider for understanding vertical text layout. For example, Arabic text in the common form of documents in vertial text mode rotates 90 degrees clockwise, *not* 90 degrees counterclockwise as you indicate.
 
The existing text layout markup can handle all possible documents of text I have found so this point, except for where Arabic runs are rotated to flow from top to bottom, which is not normally found. The examples of such text are only found in a limited number of old hand written Mongolian documents. What is specified in XSL-FO is able to handle all combinations.
 
Can you provide some samples that would support/justify changing existing properties specified for some years to something new? I have gone through a lot of documents and verified the existing writing-mode, direction, etc. provide the capability to mark up.
 
Your approach seems to try to devorce the glyphs from the natural orthography for a script and therefore the fact that glyphs run on a baseline according to orthographic conventions is sufficient for normal text in document. I do not see that your special properties are necessary.
 
Regards,
 
Paul

________________________________

From: www-style-request@w3.org on behalf of Christopher Tom
Sent: Sun 1/7/2007 1:40 PM
To: www-style@w3.org
Subject: [CSS3 Text Layout] working draft (compact version)




My previous suggestion had been designed to handle all imaginable
horizontal/vertical text layout.  This suggestion is designed to be as
compact as possible.  It has only one CSS property.
See the Robust Vertical Text Layout paper[1] for more discussion of text
layout.

I would particularly be interested in examples of text layout that
people feel should be handled, but are not by this model.

CSS Text Layout Level 3

Three properties and two classes of scripts describe the layout of text
by this model.  The natural layout for each script determines its
default property values and classes.

Properties:
Block progression direction specifies the direction in which successive
lines of text are stacked.
Examples:
Latin, Arabic - down
Mongolian - right
Chinese, Japanese, Korean - left

Inline progression direction specifies the direction in which successive
glyphs are placed within a line of text.
Examples:
Latin - right
Arabic - left
Mongolian, Chinese, Japanese, Korean - down

Text orientation specifies the direction which the glyphs' "up" points
towards.
Examples:
Latin, Arabic, Mongolian, Chinese, Japanese, Korean - up.

Classes:
Relative scripts are scripts for which there exists an invertible
transformation between the inline progression direction and text
orientation.  This transformation defines the natural relation between
the two properties among all possible values.
Examples of transformations from text orientation to inline progression
direction:
Latin - 90 degrees clockwise rotation
Arabic - 90 degrees counterclockwise rotation
Mongolian - 180 degrees rotation

Independent scripts are scripts for which the inline progression
direction and text orientation are independent of each other.
Examples:
Chinese, Japanese, Korean are independent scripts.

The CSS property for Text Layout Level 3:
Name: text-orientation-vertical
Value: up | down | left | right | natural
Initial: natural
This property describes the text's glyph orientation.  Block progression
direction is defined by the flow direction of the Box Model.  For
relative scripts, when text-orientation-vertical does not have the value
natural, inline progression direction is defined by the transformation
of text-orientation-vertical when the transformed direction is an inline
direction.  In other cases, inline progression direction is down for
vertical lines, or the script's default for horizontal lines if the
default is horizontal.  Otherwise it is right.
   up      - text orientation is up.
   down    - text orientation is down.
   left    - text orientation is left.
   right   - text orientation is right.
   natural - for relative scripts, text orientation is defined by the
inverse transformation of the inline progression direction.  For
independent scripts, text orientation is defined by the script's default.

Note: the choice of right as the last case for inline progression
direction is fairly arbitrary, if possible something like inheriting the
direction of the surrounding text might be more useful.
What would be the procedure for turning something like this into an
actual working draft?

[1] http://www.unicode.org/notes/tn22/
Received on Monday, 8 January 2007 05:57:59 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:49 GMT