Re: CSS3 font-weight, OFF OS2.usWeightClass, and weights which are not a multiple of 100.

Thomas Phinney <[email protected]>
Newsgroups gmane.comp.web.svg,gmane.comp.web.fonts
Message-ID <[email protected]>
I'll just note that if one wants a system to deal with real-world fonts, it should deal with inputs for usWeightClass that are any integer from 0-1000.

I am curious as to what everyone thinks a font creator should do if they have a family with three or more weights that are heavier than "bold" (which maps to 700).

In our collection of about two thousand web fonts, as I recall there are four such cases.

This is aside from the many other cases where values aren't in hundreds, etc.

I remain puzzled that CSS 3 will remain deliberately incompatible with real fonts in this area.

T

On Feb 9, 2011, at 6:20, Chris Lilley <[email protected]> wrote:

> Hello www-font,
> 
> Open Font Format (OFF [1]) states that OS2.usWeightClass is a 2-byte unsigned short and describes it as
> 
> "Indicates the visual weight (degree of blackness or thickness of strokes) of the characters in the
> font."
> 
> There is an accompanying table which relates particular values 9100, 200 etc) to textual descriptions (e.g. 'Thin') and C definitions from windows.h (e.g. FW_THIN).
> 
> Values which are not multiples of 100 are not specifically allowed and not specifically disallowed; they just don't have a defined mapping to those two string sources.
> 
> I have seen fonts with weights like 250 etc so I conclude that in OFF, OS2.usWeightClass is a continuous range of cardinal numbers.
> 
> CSS3 Fonts states that the font-weight property [2], used to request styling, is an ordered sequence of tokens:
> 
> "100 to 900
>    These values form an ordered sequence, where each number indicates a weight that is at least as dark as its predecessor."
> 
> and 
> 
> "Font formats that use a scale other than a nine step scale should map their scale onto the CSS scale"
> 
> and that the font-weight descriptor [3], used to tell CSS about the weight of a particular font, is also a discrete series of tokens:
> 
> "Value:    normal | bold | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900"
> 
> so I conclude that values like 250 are explicitly disallowed.
> 
> The point of this email is to ask:
> 
> a) are the above assumptions correct?
> b) if a value which is not a multiple of 100 is used in the CSS style system, (e.g by script, or by direct specification in a style sheet, or by animation) then it gets mapped to the nearest multiple of 100?
> c) thus, animation of the font-weight property should be discrete, not continuous, despite the fact that fonts with wights that are not a multiple of 100 may be available, as the CSS style shystem does not expose their native weights?
> 
> Tracker, this relates to SVG-ACTION-2936
> 
> 
> [1] ISO 14496-11:2009(E)
> PDF downloadable at no charge by agreeing to
> http://standards.iso.org/ittf/licence.html
> 
> [2] http://dev.w3.org/csswg/css3-fonts/#font-weight-prop
> 
> [3] http://dev.w3.org/csswg/css3-fonts/#font-prop-desc
> 
> 
> -- 
> Chris Lilley   Technical Director, Interaction Domain                 
> W3C Graphics Activity Lead, Fonts Activity Lead
> Co-Chair, W3C Hypertext CG
> Member, CSS, WebFonts, SVG Working Groups
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.