- From: Håkon Wium Lie <howcome@opera.com>
- Date: Sun, 26 Jul 2009 02:50:37 +0200
- To: Tal Leming <tal@typesupply.com>
- Cc: www-font <www-font@w3.org>
Tal Leming wrote: > > I think we could have a compromise worked out over the weekend if font > > vendors indicate that ZOT is acceptable. > > Is .webfont not acceptable to you? If so, why? First, let's compare the two proposals by asking some questions: - Builds garden fence? Yes, both formats give font vendors the "garden fence" they have been asking for. - Includes root string? ZOT: no .webfont: not any longer - Adds new metadata? ZOT doens't add any new metadata, it mechanically compresses existing font data/metadata .webfont adds a 10 or so elements that encode metadata about the font - Adds new level of indirection? ZOT: no, the file referenced by the src font descriptor is fetched, decompressed, and handed over to the system .webfont: yes, UAs must unzip the file referenced by the 'src' font descriptor, look for the info.xml file, parse it, search for the <fontdata> element, pick up the filename from the 'src' attribute, and hand that file over to the system. - Adds requirements beyond decoding for UAs? ZOT: no .webfont: not any more, although UAs are encouraged to show some of the metadata - Can be used with any font format? ZOT: no, it's a TT/OT-specific encoding .webfont: yes, it can e.g. be used by SVG fonts >From this, it seems that ZOT is simpler, while .webfont allows font vendors to express more information. Will this extra information be useful in any way, or could it possibly be harmful? And, are there any other ways to express the same information? Let's look at the elements that are being proposed for .webfont: * <fontdata src="demofont-bold.otf" format="opentype" name="Demo Font-Bold"/> <creationdate>2009-07-13T09:23:30+01:00</creationdate> * <vendor name="Font Vendor" url="http://fontvendor.com"/> * <designer name="Font Designer" url="http://fontdesigner.com" role="Lead"/> * <description>...</description> * <license url="vendor.url" id="1234">License text goes here.</license> <licenseename>A Font Licensee</licenseename> * <copyright>Copyright 2009 Font Vendor.</copyright> * <trademark>Demo Font is a trademark of Font Vendor.</trademark> <privatedata> <somefield>Some text.</somefield> </privatedata> A star indicates that the data also exists inside the TT/OT file. So, most of this information can already be coded into the TT/OT file. Redundancy is frowned upon in specifications: what do we do if there is a mismatch? Who is right? .webfont doesn't say anything about this, but since it doesn't demand any particular behavior from the UA, one can argue that it shouldn't matter to browsers. Some of the redundancy is shared with CSS; the @font-face declarations contain information about the format and the name of the font (to be used in 'font' and 'font-family'). What if there is a mismatch between the format declared in @font-face and inside the info.xml? The .webfont specification should specify who is right. Three of the elements do not have equivalents in TT/OT: creationdate, licenseename, and privatedata. The .webfont proposal say that the creation date should act as a version identifier for the font. I think it's a poor version identifier. For example, if the time zone is off, is it still the same version? And, are fonts really created within one minute? Doesn't it take years and years of efforts? The licenseename element is probably the most important part of the proposal. I understand the motivation for having it there. The privatedata element seems unnecessary, but hardly harmful. Some of the elements in the info.xml sample file contain HTML markup. Is this generally allowed? All elements? Including <link> and <script>, with their obvious security concerns? The proposal doesn't say. In sum, it seems that: - most of the metadata in .webfont can encoded within TT/OT - one should be able to find room for the /new/ metadata inside TT/OT - the extra level of indirection also adds overhead, redundancy, and security concerns So, I suggest that one (a) separates the semantics from the syntax in .webfont, and (b) come up with a proposal on how the semantics can be encoded within TT/OT. The resulting files can easily be encoded in ZOT. As such, this combines the best of both proposals. One remaining argument for keeping the info.xml and its indirection is that it yields a solution independent of font formats; it can be used with any new format that may come along, or even an existing one like SVG. I don't think this is a strong argument. Popular new font formats don't show up too often. For new formats, the proposed metadata can be inserted from the beginning. For SVG, one can use namespaces to inject the metadata straight into the SVG file. Cheers, -h&kon Håkon Wium Lie CTO °þe®ª howcome@opera.com http://people.opera.com/howcome
Received on Sunday, 26 July 2009 00:51:29 UTC