Re: FW: Font-family specification
From: Hakon Lie <Hakon.Lie@sophia.inria.fr>
| Scott E. Preece writes:
| > this is correct, I agree with Chris that expecting to be able to
| > distinguish a font-family from a font-weight from a font-style by value
| > is unacceptable.
| Why? Do we have any fonts called "bold", "demi-bold" or "2.3"? What is
| the chance of someone naming a new font that will conflict? If that
| happens one will have to use the 'font-family' property instead of
| 'font', but that is a minor (and highly unlikely) inconveniece.
There's no reason someone couldn't have a font named "bold" or anything
else. A lot of X users have simple names (like "sans") that are linked
to whatever font is the local preference, to allow generic documents to
specify a "name" that gets localized to a specific font. Looking at our
local catalog, we don't have a "bold" but we do have a "b" (I think for
use by a troff descendant).
I don't think it's especially unlikely.
| The 'font' property is a shorthand notation intended to make life
| easier if you write style sheets by hand. The syntax is an old
| typographic convention. Requireing extra punctuatation in the value
| defeats the purpose of the property.
With respect, I don't think there is any "old typographic convention"
that dictates that exact syntax given in the spec. Certainly
the first part ("10/12 Times New Roman") is common, but a type spec
would never include multiple typefaces, and the "style" and "weight"
components conflate things that would might be conveyed by text markings
(e.g., underlining with a wavy line for bold, a single line for italics,
two lines for small caps, ...), might be a typeface modifier, or might,
sometimes, use a separate face altogether.
I don't think using a comma instead of a space between components would
confuse or inconvenience, and would make the parsing much simpler and
unambiguous. I think it's the cost of allowing multiple font-families
in the spcification.
| Another solution is to limit the number of font names to 1 in the
| 'font' property:
| a) font: 12pt/14pt sans-serif bold; /* legal */
| b) font: 12pt/14pt helvetica sans-serif bold; /* illegal? */
| I would prefer also allowing b).
I don't mind the restriction to one font in the shorthand form, but
if you want to allow (b), you need to do one of these:
use punctuation to separate the components:
b1) font: 12pt/14pt,helvetica sans-serif,bold;
or bracket the typefaces:
b2) font: 12pt/14pt (helvetica sans-serif) bold;
or require special puctuation between the typefaces:
b3) font: 12pt/14pt helvetica or sans-serif bold;
b4) font: 12pt/14pt helvetica | sans-serif bold;
motorola/mcg urbana design center 1101 e. university, urbana, il 61801
phone: 217-384-8589 fax: 217-384-8550
internet mail: firstname.lastname@example.org