W3C home > Mailing lists > Public > www-style@w3.org > September 2011

Re: [css3-text] text-transform: uppercase; and cpsp OpenType Feature

From: Christopher Slye <cslye@adobe.com>
Date: Wed, 7 Sep 2011 07:44:41 -0700
CC: fantasai <fantasai.lists@inkedblade.net>, "www-style@w3.org" <www-style@w3.org>, "www-font@w3.org" <www-font@w3.org>
Message-ID: <3950895E-E3B8-4C16-A0A6-BBD1895C0177@adobe.com>
To: John Daggett <jdaggett@mozilla.com>
Just to be clear about the intent of the 'cpsp' feature (a least from Adobe's perspective):

There is a fundamental typographic problem with glyph metrics, which is that optimal spacing for an uppercase glyph is different with lowercase than with uppercase. This feature (in theory, anyway) gives *the type designer* the opportunity to provide better default spacing for an all-cap context.

Of course any typographically-sensitive designer can add some amount of spacing to an all-cap setting to improve it as they see fit, but just as a font's default metrics should be considered an important part of the overall design, the amount of spacing in 'cpsp' should, also. It's the designer's intent. That's why it's ideal if the feature is automatically applied in all-caps contexts.

I realize this is somewhat idealistic, since I think the inclusion of 'cpsp' in fonts is spotty, and applications/clients obviously apply it inconsistently. So, for what it's worth.


On Sep 7, 2011, at 12:24 AM, John Daggett wrote:

> [cross posting to www-font]
> fantasai wrote:
>> One of the issues marked in the latest draft of CSS3 Text is whether the
>> cpsp OpenType feature should be turned on for combinations of
>>   text-transform: uppercase; letter-spacing: normal;
>> This does seem to be the recommendation in the OpenType spec:
>>   http://www.microsoft.com/typography/otspec/features_ae.htm#cpsp
> A quick search of typophile returns some interesting discussions
> related to this feature [1]. The capital spacing feature is a feature
> registered by Adobe and it's functionality mimic's InDesign behavior. 
> In InDesign, if you apply allcaps to a specific run of text, the
> letters are uppercased and the feature is enabled.  However, this
> suffers from the problem that normal textruns of all uppercase letters
> can't access this feature.
> In the context of text-transform enabling capital spacing, that would
> mean the two lines below would render differently, the first one with
> capital spacing, the second line without:
>  .ex1 { text-transform: uppercase; }
>  <p class="t1">abc</p>
>  <p>ABC</p>
> I think that *if* we want to support this feature it would be better
> to support it using an extra value for font-variant-caps.  Support
> wouldn't be automatic but there also wouldn't be odd differences in
> text-transform'ed text versus simple strings of capital letters.
> I should also point out that you can currently achieve similar results using:
>  .ex2 { text-transform: uppercase; letter-spacing: 0.2em; }
> One note about the OpenType feature tag list, what's described as
> "default" in the description of individual feature tags may not in
> actuality be a true, general default.  This feature is an *optional*
> feature that is which is applied in certain contexts (e.g. when the
> allcaps setting is enabled in InDesign).
> Cheers,
> John
> [1] http://typophile.com/node/15849
Received on Wednesday, 7 September 2011 14:45:35 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:08:04 UTC