RE: [CSS21][css3-text] letter-spacing, word-spacing and justification

Elika,
Your comments below help, but I do not believe the address my main concern; namely, that using spaces between letter for justification (Use Case 1) is very different than using letter spacing for readability (Use Case 2) and the mixing them together in the specification will lead to confusion on the part of authors.

Furthermore, it is not at all clear to me, despite the examples given this last week (your interchanges with Liam), that "letter" is the right term to use for spacing between glyphs (or glyph clusters) in East Asian and Northern Indic based typographies. The examples show Use Case 1 spacing. It is not clear that Use Case 2 spacing (for readability) makes sense in these non Western scripts (except when sequences of Arabic numerals are shown)

If the issue is that both types of spacing need the same definitions, then lets factor out the definitions and reference the definitions from both the "letter-space" and "text-justify" sections.  Then letter-space can talk about setting an amount of space between letters and text justify can talk about adding space between letters and words in a relevant way.

See more comments in-line below

Steve Z.

-----Original Message-----
From: fantasai [mailto:fantasai.lists@inkedblade.net] 
Sent: Tuesday, July 02, 2013 5:44 PM
To: www-style@w3.org
Subject: Re: [CSS21][css3-text] letter-spacing, word-spacing and justification

On 07/02/2013 04:57 PM, Stephen Zilles wrote:
> With regard to the proposal documented below, I see several concerns.
>
> First lets consider the use cases for 'letter-spacing'. There seem to be 2 major uses in Western typography:
> Use Case 1. It is used in headlines to help justify a headline that 
> would not otherwise fill out the column width, and Use Case 2. It is used to improve the readability (and typographic rhythm) of text (often headlines) that is set in capital letters. Robert Bringhurst in The Elements of Typographic Style (p30) says, "2.1.6 Letter space all strings of capitals and small capitals, and all long strings of digits."
> [...]
> But, as the specification is written, the justification process 
> includes adjusting 'letter-spacing' as part of the justification 
> algorithm.

This is largely a spec shortcut, as otherwise all the various restrictions on letter-spacing (such as, don't letter-space zero-width characters) would have to be duplicated in the justification section.
SZ: See above comments

> Is this the only use case for "letter-spacing" in East Asian Text?
> Is it also used, as in the second use case for Western text, to put a 
> desired amount of space between East Asian glyphs without necessarily 
> justifying a line?

Yes, I believe this is also the case.
SZ: Do you have examples?

> If not, might it not be possible to describe the values of 
> justification as inserting "extra space between letters" rather than 
> saying insert "letter-space". If that change were made, then 
> "letter-space" could have it  Western Use Case 2 meaning without 
> affecting justification. That is, an author could "letter-space" a 
> segment of text and that segment would keep that spacing, but where 
> justification requires it, additional justification space between 
> letters might be inserted. That would keep the original rhythm of the glyphs, just spreading them further apart uniformly.

This is the intention of the proposal. The 'letter-spacing' property adds a fixed amount of spacing. The justification algorithm adds a flexible amount of spacing in addition to that.

> What about having a second argument of letter-spacing, "fixed" to 
> handle the Western Use Case 2 usage. This has two problems. As just 
> noted, it seems (to me, but perhaps not typographers) that the author 
> would want to preserve the rhythm of his text even when extra space 
> between letters is needed. In this case, the author would want both 
> the letter-space and the extra space between letters needed for 
> justification which is not, I believe, what "fixed" would do.

The purpose of this would be to force-disable justification between letters. The default behavior would allow the UA to justify between letters (which is necessary for East Asian typesetting practice) when appropriate.

We could of course pick some other way of disabling justification between letters. This was just one idea that seemed particularly straightforward.

> The second reason that fixed is not a particularly good solution is 
> that the author may like to constrain, by providing Min and Max values 
> for the extra letter spacing between glyphs. For example the author 
> may not ever want to decrease the distance between glyphs and might 
> not want the extra space between letter to approach the value of word 
> spaces to avoid confusing the two types of spacing. Using "fixed" does 
> not make it easy to add these parameters in the future.

Future compat is not a worry here. We can add max and min values. Fixed would just mean, the max and min are the same as the optimal, whatever that is.

SZ: Compat is a worry because "fixed" is, I believe, ill specified. Going back to the point that I am trying to make above, it is note Use Case 2 letter space that you want to control; it is Use Case 1 justification space between letters that you want to control. It was noted that Japanese wants to allow negative spacing, but English typography does not want to allow this. Perhaps we need to introduce the Min and Max values now and have them be associated with "text-justify" rather than "letter-space". 

~fantasai

Received on Wednesday, 3 July 2013 15:57:48 UTC