- From: John Daggett <jdaggett@mozilla.com>
- Date: Mon, 20 May 2013 20:15:56 -0700 (PDT)
- To: www-style@w3.org
One general comment, since you're going through the spec section by section, could you post your comments with better subject descriptions rather than "Minor comments xxx"? fantasai wrote: > # If these descriptors are omitted, default values are > # assumed. > which, assuming default=initial, means that a bold font will > not be considered font-weight: bold; unless that descriptor > is there. > > # User agents that implement synthetic bolding and > # obliqueing must only apply synthetic styling in cases > # where the font descriptors imply this is needed, rather > # than based on the style attributes implied by the font > # data. > > I don't understand this. IMO synthetic bolding or obliquing > should only be applied to a downloaded font if the author > asks for a bold/oblique version and there isn't one available, For font families defined via @font-face rules, font matching occurs via the style descriptors defined in the @font-face rules. So the style characteristics defined within font data (e.g. the weight/width values in the OS/2 table) have no effect on the font weight assigned to a particular face. So synthetic faces are created based on whether the set of faces lack italic/bold faces as defined via these descriptor values and *not* what's in the font data for a particular face. > @font-face { font-family: foo; src: local(foo); } > p { font-family: foo; } > em { font-weight: bold; } > /* em will synthesize bold, cuz we didn't have one */ > > vs. > > @font-face { font-family: foo; src: local(foo); } > @font-face { font-family: foo; src: local(foo bold); > font-weight: bold; } > p { font-family: foo; } > em { font-weight: bold; } > /* em will not synthesize bold, cuz we have one */ For <em> elements in these examples, you'll get synthetic bold in the first one, not in the second one. You'll get synthetic italics in both cases. > While we're on this example, just wanted to clarify... > does the rule above mean that even if there's a foo italic on the > system, it will never be used because we defined a font-family foo > via @font-face? Yes. A single @font-face rule defines a single face and local() refers to a single face, not a family. Cheers, John Daggett
Received on Tuesday, 21 May 2013 03:16:27 UTC