该附录是提示性的,而不是规范性的。
不同的平台使用各种不同的字体格式。要选择一个优先的字体格式,使用的是透明内容沟通方式(参见[NEGOT])。它总能指出字体何时不再被引用,因为URI嵌入在字体描述之中。某个特定的实现会知道它支持哪些可下载字体格式,从而使用格式提示而避免下载它不支持的格式中的字体。
Family,Serif Style和Proportion选项由Windows 95系统用来进行字体选择和匹配。
这十个选项的含义以及可以取的值(括号中给出)在下面列出。这些是最通常的情形,其“family”为2,Text and Display。(如果这第一个数字取值不同,那么剩余九个数字的含义也随之不同)。关于Panose-1的更多细节,参见[PANOSE]。
Panose-2(参见[PANOSE2])是一个字体分类和匹配技术更复杂的规范。例如,拉丁字体的衬线特性可以和日文字母的终止笔划进行比较。
Panose-2数值不存储于任何已知的字体格式中,但是可以测量。
该信息可以通过观察OS/2表(如果有)中的ulUnicodeRange位得到,它保存了集合中的一个位表示。该表格在微软的TrueType规范版本1.66中定义。如果将这个信息考虑成一个集合,每个元素对应Unicode 1.1字符块,集合中出现该元素表示该字体有一个或多个外廓呈现来代表该块中的至少一个字符。 该集合有128个元素,描述如下表。次序一般按照Unicode 1.1标准中的次序。它可以用来转换TrueType字体中的信息到CSS的'unicode-range'描述子。
块 | 位 | 块名 | Unicode范围 |
---|---|---|---|
0 | 1 | Basic Latin | U+0-7F |
1 | 2 | Latin-1 Supplement | U+80-FF |
2 | 4 | Latin-1 Extended-A | U+100-17F |
3 | 8 | Latin Extended-B | U+180-24F |
4 | 1 | IPA Extensions | U+250-2AF |
5 | 2 | Spacing Modifier Letters | U+2B0-2FF |
6 | 4 | Combining Diacritical Marks | U+300-36F |
7 | 8 | Greek | U+370-3CF |
8 | 1 | Greek Symbols and Coptic | U+3D0-3EF |
9 | 2 | Cyrillic | U+400-4FF |
10 | 4 | Armenian | U+530-58F |
11 | 8 | Hebrew | U+590-5FF |
12 | 1 | Hebrew Extended-A Hebrew Extended-B | ?? what ranges ?? |
13 | 2 | Arabic | U+600-69F |
14 | 4 | Arabic Extended | U+670-6FF |
15 | 8 | Devanagari | U+900-97F |
16 | 1 | Bengali | U+980-9FF |
17 | 2 | Gurmukhi | U+A00-A7F |
18 | 4 | Gujarati | U+A80-AFF |
19 | 8 | Oriya | U+B00-B7F |
20 | 1 | Tamil | U+B80-BFF |
21 | 2 | Telugu | U+C00-C7F |
22 | 4 | Kannada | U+C80-CFF |
23 | 8 | Malayalam | U+D00-D7F |
24 | 1 | Thai | U+E00-E7F |
25 | 2 | Lao | U+E80-EFF |
26 | 4 | Georgian | U+10A0-10EF |
27 | 8 | Georgian Extended | U+10F0-10FF ?? |
28 | 1 | Hangul Jamo | U+1100-11FF |
29 | 2 | Latin Extended Additional | - |
30 | 4 | Greek Extended | U+1F00-1FFF |
31 | 8 | General Punctuation | U+2000-206F |
32 | 1 | Superscripts and Subscripts | - |
33 | 2 | Currency Symbols | U+20A0-20CF |
34 | 4 | Combining Marks for Symbols | U+20D0-20FF |
35 | 8 | Letterlike Symbols | U+2100-214F |
36 | 1 | Number Forms | U+2150-218F |
37 | 2 | Arrows | U+2190-21FF |
38 | 4 | Mathematical Operators | U+2200-22FF |
39 | 8 | Miscellaneous Technical | U+2300-23FF |
40 | 1 | Control Pictures | U+2400-243F |
41 | 2 | Optical Character Recognition | U+2440-245F |
42 | 4 | Enclosed Alphanumerics | U+2460-24FF |
43 | 8 | Box Drawing | U+2500-257F |
44 | 1 | Block Elements | U+2580-259F |
45 | 2 | Geometric Shapes | U+25A0-25FF |
46 | 4 | Miscellaneous Symbols | U+2600-26FF |
47 | 8 | Dingbats | U+2700-27BF |
48 | 1 | CJK Symbols and Punctuation | U+3000-303F |
49 | 2 | Hiragana | U+3040-309F |
50 | 4 | Katakana | U+30A0-30FF |
51 | 8 | Bopomofo | U+3100-312F |
52 | 1 | Hangul Compatibility Jamo | U+3130-318F |
53 | 2 | CJK Miscellaneous | ?? |
54 | 4 | Enclosed CJK Letters and Months | U+3200-32FF |
55 | 8 | CJK compatibility | U+3300-33FF |
56 | 1 | Hangul | U+AC00-D7FF |
59 | 8 | CJK Unified Ideographs | U+4E00-9FFF |
60 | 1 | Private Use Area | U+E000-F8FF |
61 | 2 | CJK Compatibility Ideographs | U+F900-FAFF |
62 | 4 | Alphabetic Presentation Forms | U+FB00-FB4F |
63 | 8 | Arabic Presentation Forms-A | U+FB50-FDFF |
64 | 1 | Combining Half Marks | U+FE20-FE2F |
65 | 2 | CJK compatibility Forms | U+FE30-FE4F |
66 | 4 | Small Form Variants | U+FE50-FE6F |
67 | 8 | Arabic Presentation Forms-B | U+FE70-FEFF |
68 | 1 | Halfwidth and Fullwidth Forms | U+FF00-FFEF |
69 | 2 | Specials | U+FFF0-FFFD |
TrueType位系统的问题是,它绑定于Unicode 1.1,因而不能和Unicode扩展协同,例如它无法表示藏文,或者其它在Unicode 2.0或更晚版本中引进的语种。
编辑工具应该允许样式表作者增加及修改字体描述子。然而在某些情况下,编辑工具可以通过本地安装的字体帮助自动生成样式表中引用到的字体的描述子。对于那些子集化或转换字体以供动态下载的工具而言也是它的功能。
对于一般字体格式,下表给出了去哪里找这些信息的建议。
描述子 | Type 1 | TrueType和OpenType | TrueType GX [TRUETYPEGX] |
'ascent' | AFM/PFM文件中的'Ascender' | 'hhea'表中的'Ascender'或(偏好)'OS/2'表中的'sTypoAscender' | 'fmtx'表里的'horizontalBefore' |
'baseline' | bsln表,参见注解 | ||
'bbox' | FontBBox,字体字典 | 'head'表的'xMin','xMax','yMin'和'yMax'项 | |
'cap-height' | AFM/PFM文件中的CapHeight | ||
'descent' | AFM/PFM文件中的'Descender' | ||
'mathline' | bsln table | ||
'font-family' | FamilyName,fontinfo字典 | 名称表 | |
'stemh' | StdHW,AFM/PFM文件中的私有字典 | ||
'stemv' | /StdVW,私有字典 | cvt表格 | |
'topline' | bsln表 | ||
'unicode-range' | cmap文件 | OS/2表,参见附录C | |
'units-per-em' | FontMatrix,字体字典 | unitsPerEm,头表格 | |
'widths' | hmtx表格 |