Alignment with ISO Open Font. was Re: DR 09-0052: SML, Styles: family attribute range issue
Rick Jelliffe
rjelliffe at allette.com.au
Thu Jun 11 10:18:05 CEST 2009
These styles are related to those now defined in ISO/IEC
14496-22:2007 Information technology -- Coding of audio-visual
objects -- Part 22: Open Font Format
Open Font can be downloaded from
http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html
search 14496-22 and click through license to ZIP and PDF.
Annex B, p 347 gives the more recent list of font classes (and font
subclasses). I presume this has the advantage of supporting Adobe/Apple
fonts better, or of being more future proofed. I also presume, because
of Microsoft's involvement in Open Font, that it is reasonable to expect
that if future versions of Office supported more font classes, it would
do so in conformance to these styles.
I also suggest that these font classes are the appropriate things to
use, certainly for the strict schema, because we do not want to
arbitrarily limit the capacity of an OOXML application to utilize as
much of OpenFont as it needs for general application use.
In other words, the list in OOXML is obsolete, and suitable for
transitional. We should align with Open Font.
I suggest the following (my additions in green):
_18.18.x ST_FontFamily (Font Family _Class_)___
_This simple type specifies a ____font family _class using the Class
values specified in Annex B of of ISO/IEC 14496-22:2007_. A font family
_class _is a set of fonts having common stroke width and serif
characteristics. This is system level font information. _
_This simple type's contents are a restriction of the W3C XML Schema
unsignedInt datatype._
_This simple type is restricted to the values listed in the following
tables. Note: the equivalent names used by Ecma 367 are given in
parentheses. _
Table 1.
__
*_Value_*
*_Font Family _*Class
_0___
No classification
_1___
Oldstyle serifs (_Roman)_
_2___
Transitional serifs (_Swiss)_
_3___
Modern serifs (_Modern)_
_4___
Clarenden serifs _(Script)_
_5___
Slab serifs (_Decorative)_
Table 2.
*_Value_*
*_Font Family _*Class
_6, 11, 13, 14___
(Reserved)
_7___
Freeform serifs
_8___
Sans serifs
__
_9___
Ornamentals
__
_10___
Scripts
__
_12___
Symbolic
A producer or consumer may substitute values in table 1 for values of
table 2 for compatibility with ECMA 367..
The last sentence is strictly not necessary, but there to reduce
immediate impact on implementations. Also, I suggest
__
_<xsd:maxInclusive value="_14_"/>_
to align with the Open Font standard. I note that IS14496-22 derives
these numbers from IBM, so adopting them should not be controversial.
Vendors may like to consider whether it would be useful to include an
attribute for the Open Font Format subclass number as well, for more
exact matching.
Note that I believe this can be regarded as a DCOR change, because the
BRM's specific requirement that the PANOSE numbers reference Open Font
Format (as they now do: see 19.2.1.13 font) is part of a larger
requirement that OOXML's font substitution regime should be aligned with
Open Font Format capabilities.
I note that IS14496-22 is also an SC34 standard (joint with its
champions, the MPEG group), which may encourage us to make use of it.
Cheers
Rick Jelliffe
More information about the sc34wg4
mailing list