|
| 1 | +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
| 2 | +<html lang="en"> |
| 3 | +<!-- $Id: fontstuff.src,v 1.1 1997-10-31 03:22:41 clilley Exp $ --> |
| 4 | +<HEAD> |
| 5 | +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> |
| 6 | +<TITLE>Appendix E: Aids to Web Fonts implementation</TITLE> |
| 7 | +<LINK rel="previous" href="grammar.html"> |
| 8 | +<LINK rel="next" href="refs.html"> |
| 9 | +<LINK rel="STYLESHEET" href="style/default.css" type="text/css"> |
| 10 | +</HEAD> |
| 11 | +<BODY> |
| 12 | +<H1 align="center">Appendix E: Aids to Web Fonts implementation</H1> |
| 13 | +<P><em>This appendix is informative.</em> |
| 14 | + |
| 15 | +<h2><a name="panose">Meaning of the Panose Digits</a></h2> |
| 16 | + |
| 17 | +<p>For further details on Panose-1, see <a rel="biblioentry" |
| 18 | + href="./refs.html#ref-PANOSE">[PANOSE]</a>. |
| 19 | + |
| 20 | +<dl> |
| 21 | +<dt>Family |
| 22 | +<dd><ul> |
| 23 | +<li>Any (0) |
| 24 | +<li>No Fit (1) |
| 25 | +<li><a rel="biblioentry" href="./refs.html#ref-PANOSE"><b>Latin Text |
| 26 | + and Display</b></a> <i>(2)</i> |
| 27 | +<li><a rel="biblioentry" href="./refs.html#ref-PANOSE"><b>Latin Script</b></a> (3) |
| 28 | +<li><a rel="biblioentry" href="./refs.html#ref-PANOSE"><b>Latin Decorative</b></a> (4) |
| 29 | +<li><a rel="biblioentry" href="./refs.html#ref-PANOSE"><b>Latin Pictorial</b></a> (5) |
| 30 | +</ul> |
| 31 | + |
| 32 | +<dt>Serif Style |
| 33 | +<dd><ul> |
| 34 | +<li>Any (0) |
| 35 | +<li>No Fit (1) |
| 36 | +<li>Cove (2) |
| 37 | +<li>Obtuse Cove (3) |
| 38 | +<li>Square Cove (4) |
| 39 | +<li>Obtuse Square Cove (5) |
| 40 | +<li>Square (6) |
| 41 | +<li>Thin (7) |
| 42 | +<li>Bone (8) |
| 43 | +<li>Exaggerated (9) |
| 44 | +<li>Triangle (10) |
| 45 | +<li>Normal Sans (11) |
| 46 | +<li>Obtuse Sans (12) |
| 47 | +<li>Perp Sans (13) |
| 48 | +<li>Flared (14) |
| 49 | +<li>Rounded (15) |
| 50 | +</ul> |
| 51 | + |
| 52 | +<dt>Weight |
| 53 | +<dd><ul><li>Any (0) |
| 54 | +<li>No Fit (1) |
| 55 | +<li>Very Light (2)[100] |
| 56 | +<li>Light (3) [200] |
| 57 | +<li>Thin (4) [300] |
| 58 | +<li>Book (5) [400] <i>same as CSS1 'normal'</i> |
| 59 | +<li>Medium (6) [500] |
| 60 | +<li>Demi (7) [600] |
| 61 | +<li>Bold (8) [700] <i>same as CSS1 'bold'</i> |
| 62 | +<li>Heavy (9) [800] |
| 63 | +<li>Black (10) [900] |
| 64 | +<li>Extra Black / Nord (11) [900] <i>force mapping to CSS1 100-900 scale</i> |
| 65 | +</ul> |
| 66 | + |
| 67 | +<dt>Proportion |
| 68 | +<dd><ul> |
| 69 | +<li>Any (0) |
| 70 | +<li>No Fit (1) |
| 71 | +<li>Old Style (2) |
| 72 | +<li>Modern (3) |
| 73 | +<li>Even Width (4) |
| 74 | +<li>Expanded (5) |
| 75 | +<li>Condensed (6) |
| 76 | +<li>Very Expanded (7) |
| 77 | +<li>Very Condensed (8) |
| 78 | +<li>Monospaced (9) |
| 79 | +</ul> |
| 80 | + |
| 81 | +<dt>Contrast |
| 82 | +<dd><ul><li>Any (0) |
| 83 | +<li>No Fit (1) |
| 84 | +<li>None (2) |
| 85 | +<li>Very Low (3) |
| 86 | +<li>Low (4) |
| 87 | +<li>Medium Low (5) |
| 88 | +<li>Medium (6) |
| 89 | +<li>Medium High (7) |
| 90 | +<li>High (8) |
| 91 | +<li>Very High (9) |
| 92 | +</ul> |
| 93 | + |
| 94 | +<dt>Stroke Variation |
| 95 | +<dd><ul><li>Any (0) |
| 96 | +<li>No Fit (1) |
| 97 | +<li>No Variation (2) |
| 98 | +<li>Gradual/Diagonal (3) |
| 99 | +<li>Gradual/Transitional (4) |
| 100 | +<li>Gradual/Vertical (5) |
| 101 | +<li>Gradual/Horizontal (6) |
| 102 | +<li>Rapid/Vertical (7) |
| 103 | +<li>Rapid/Horizontal (8) |
| 104 | +<li>Instant/Horizontal (9) |
| 105 | +<li>Instant/Vertical (10) |
| 106 | +</ul> |
| 107 | + |
| 108 | +<dt>Arm Style |
| 109 | +<dd><ul><li>Any (0) |
| 110 | +<li>No Fit (1) |
| 111 | +<li>Straight Arms/Horizontal (2) |
| 112 | +<li>Straight Arms/Wedge (3) |
| 113 | +<li>Straight Arms/Vertical (4) |
| 114 | +<li>Straight Arms/Single Serif (5) |
| 115 | +<li>Straight Arms/Double Serif (6) |
| 116 | +<li>Non-Straight Arms/Horizontal (7) |
| 117 | +<li>Non-Straight Arms/Wedge (8) |
| 118 | +<li>Non-Straight Arms/Vertical 90) |
| 119 | +<li>Non-Straight Arms/Single Serif (10) |
| 120 | +<li>Non-Straight Arms/Double Serif (11) |
| 121 | +</ul> |
| 122 | + |
| 123 | + |
| 124 | +<dt>Letterform |
| 125 | +<dd> |
| 126 | +<ul><li>Any (0) |
| 127 | +<li>No Fit (1) |
| 128 | +<li>Normal/Contact (2) |
| 129 | +<li>Normal/Weighted (3) |
| 130 | +<li>Normal/Boxed (4) |
| 131 | +<li>Normal/Flattened (5) |
| 132 | +<li>Normal/Rounded (6) |
| 133 | +<li>Normal/Off Center (7) |
| 134 | +<li>Normal/Square (8) |
| 135 | +<li>Oblique/Contact (9) |
| 136 | +<li>Oblique/Weighted (10) |
| 137 | +<li>Oblique/Boxed (11) |
| 138 | +<li>Oblique/Flattened (12) |
| 139 | +<li>Oblique/Rounded (13) |
| 140 | +<li>Oblique/Off Center (14) |
| 141 | +<li>Oblique/Square (15) |
| 142 | +</ul> |
| 143 | + |
| 144 | +<dt>Midline |
| 145 | +<dd> |
| 146 | +<ul><li>Any (0) |
| 147 | +<li>No Fit (1) |
| 148 | +<li>Standard/Trimmed (2) |
| 149 | +<li>Standard/Pointed (3) |
| 150 | +<li>Standard/Serifed (4) |
| 151 | +<li>High/Trimmed (5) |
| 152 | +<li>High/Pointed (6) |
| 153 | +<li>High/Serifed (7) |
| 154 | +<li>Constant/Trimmed (8) |
| 155 | +<li>Constant/Pointed (9) |
| 156 | +<li>Constant/Serifed (10) |
| 157 | +<li>Low/Trimmed (11) |
| 158 | +<li>Low/Pointed (12) |
| 159 | +<li>Low/Serifed (13) |
| 160 | +</ul> |
| 161 | + |
| 162 | +<dt>XHeight |
| 163 | +<dd><ul><li>Any (0) |
| 164 | +<li>No Fit (1) |
| 165 | +<li>Constant/Small (2) |
| 166 | +<li>Constant/Standard (3) |
| 167 | +<li>Constant/Large (4) |
| 168 | +<li>Ducking/Small (5) |
| 169 | +<li>Ducking/Standard (6) |
| 170 | +<li>Ducking/Large (7) |
| 171 | +</ul> |
| 172 | +</dl> |
| 173 | + |
| 174 | + |
| 175 | +<h2><a name="truetype-unicode">Deducing Unicode Ranges for TrueType</a></h2> |
| 176 | + |
| 177 | +This information is available in |
| 178 | +the font by looking at the 'ulUnicodeRange' bits in the 'OS/2' table (if it has one), |
| 179 | +which holds a bitfield representation of the set. This table is |
| 180 | +defined in revision 1.66 of the TrueType specification, from |
| 181 | +Microsoft. Considering this information as a set, each element |
| 182 | +corresponds to a Unicode 1.1 character block, and the presence of that |
| 183 | +element in the set indicates that the font has one or more glyph |
| 184 | +representations to represent at least one character in that block. The |
| 185 | +set has 128 elements as described below. The order generally follows |
| 186 | +that in the Unicode 1.1 standard. This table may be used to convert |
| 187 | +the information in a TrueType font into a CSS 'unicode-range' |
| 188 | +descriptor. |
| 189 | + |
| 190 | + |
| 191 | +<table> |
| 192 | +<tr><th colspan="4"><hr><tr><th>Block<th>Add<th>Block name<th>Unicode range |
| 193 | +<tr><th colspan="4"><hr><tr><td>0<td>1<td>Basic Latin<td>U+0-7F |
| 194 | +<tr><td>1<td>2<td>Latin-1 Supplement<td>U+80-FF |
| 195 | +<tr><td>2<td>4<td>Latin-1 Extended-A<td>U+100-17F |
| 196 | +<tr><td>3<td>8<td>Latin Extended-B<td>U+180-24F |
| 197 | +<tr><th colspan="4"><hr> |
| 198 | +<tr><td>4<td>1<td>IPA Extensions<td>U+250-2AF |
| 199 | +<tr><td>5<td>2<td>Spacing Modifier Letters<td>U+2B0-2FF |
| 200 | +<tr><td>6<td>4<td>Combining Diacritical Marks<td>U+300-36F |
| 201 | +<tr><td>7<td>8<td>Greek<td>U+370-3CF |
| 202 | +<tr><th colspan="4"><hr> |
| 203 | +<tr><td>8<td>1<td><i>Greek Symbols and Coptic</i><td>U+3D0-3EF |
| 204 | +<tr><td>9<td>2<td>Cyrillic<td>U+400-4FF<!-- 0500-052F ?? --> |
| 205 | +<tr><td>10<td>4<td>Armenian<td>U+530-58F |
| 206 | +<tr><td>11<td>8<td>Hebrew<td>U+590-5FF |
| 207 | +<tr><th colspan="4"><hr> |
| 208 | +<tr><td>12<td>1<td><i>Hebrew Extended-A<br>Hebrew Extended-B</i><td>?? what ranges ?? |
| 209 | +<tr><td>13<td>2<td>Arabic<td>U+600-69F<!--0700-08FF ?? --> |
| 210 | +<tr><td>14<td>4<td><i>Arabic Extended</i><td>U+670-6FF |
| 211 | +<tr><td>15<td>8<td>Devanagari<td>U+900-97F |
| 212 | +<tr><th colspan="4"><hr> |
| 213 | +<tr><td>16<td>1<td>Bengali<td>U+980-9FF |
| 214 | +<tr><td>17<td>2<td>Gurmukhi<td>U+A00-A7F |
| 215 | +<tr><td>18<td>4<td>Gujarati<td>U+A80-AFF |
| 216 | +<tr><td>19<td>8<td>Oriya<td>U+B00-B7F |
| 217 | +<tr><th colspan="4"><hr> |
| 218 | +<tr><td>20<td>1<td>Tamil<td>U+B80-BFF |
| 219 | +<tr><td>21<td>2<td>Telugu<td>U+C00-C7F |
| 220 | +<tr><td>22<td>4<td>Kannada<td>U+C80-CFF |
| 221 | +<tr><td>23<td>8<td>Malayalam<td>U+D00-D7F<!-- 0D80-0DFF ?? --> |
| 222 | +<tr><th colspan="4"><hr> |
| 223 | +<tr><td>24<td>1<td>Thai<td>U+E00-E7F |
| 224 | +<tr><td>25<td>2<td>Lao<td>U+E80-EFF |
| 225 | +<!-- <tr><td>- <td><b>Tibetan ??</b><td>--> |
| 226 | +<tr><td>26<td>4<td>Georgian<td>U+10A0-10EF |
| 227 | +<tr><td>27<td>8<td><i>Georgian Extended</i><td>U+10F0-10FF ?? |
| 228 | +<tr><th colspan="4"><hr> |
| 229 | +<tr><td>28<td>1<td>Hangul Jamo<td>U+1100-11FF |
| 230 | +<tr><td>29<td>2<td>Latin Extended Additional<td>- |
| 231 | +<tr><td>30<td>4<td>Greek Extended<td>U+1F00-1FFF |
| 232 | +<tr><td>31<td>8<td>General Punctuation<td>U+2000-206F |
| 233 | +<tr><th colspan="4"><hr> |
| 234 | +<tr><td>32<td>1<td>Superscripts and Subscripts<td>- |
| 235 | +<tr><td>33<td>2<td>Currency Symbols<td>U+20A0-20CF |
| 236 | +<tr><td>34<td>4<td>Combining Marks for Symbols<td>U+20D0-20FF |
| 237 | +<tr><td>35<td>8<td>Letterlike Symbols<td>U+2100-214F |
| 238 | +<tr><th colspan="4"><hr> |
| 239 | +<tr><td>36<td>1<td>Number Forms<td>U+2150-218F |
| 240 | +<tr><td>37<td>2<td>Arrows<td>U+2190-21FF |
| 241 | +<tr><td>38<td>4<td>Mathematical Operators<td>U+2200-22FF |
| 242 | +<tr><td>39<td>8<td>Miscellaneous Technical<td>U+2300-23FF |
| 243 | +<tr><th colspan="4"><hr> |
| 244 | +<tr><td>40<td>1<td>Control Pictures<td>U+2400-243F |
| 245 | +<tr><td>41<td>2<td>Optical Character Recognition<td>U+2440-245F |
| 246 | +<tr><td>42<td>4<td>Enclosed Alphanumerics<td>U+2460-24FF |
| 247 | +<tr><td>43<td>8<td>Box Drawing<td>U+2500-257F |
| 248 | +<tr><th colspan="4"><hr> |
| 249 | +<tr><td>44<td>1<td>Block Elements<td>U+2580-259F |
| 250 | +<tr><td>45<td>2<td>Geometric Shapes<td>U+25A0-25FF |
| 251 | +<tr><td>46<td>4<td>Miscellaneous Symbols<td>U+2600-26FF |
| 252 | +<tr><td>47<td>8<td>Dingbats<td>U+2700-27BF |
| 253 | +<tr><th colspan="4"><hr> |
| 254 | +<tr><td>48<td>1<td>CJK Symbols and Punctuation<td>U+3000-303F |
| 255 | +<tr><td>49<td>2<td>Hiragana<td>U+3040-309F |
| 256 | +<tr><td>50<td>4<td>Katakana<td>U+30A0-30FF |
| 257 | +<tr><td>51<td>8<td>Bopomofo<td>U+3100-312F |
| 258 | +<tr><th colspan="4"><hr> |
| 259 | +<tr><td>52<td>1<td>Hangul Compatibility Jamo<td>U+3130-318F |
| 260 | +<!-- <tr><td>- <td><b>Kanbun ??</b><td>--> |
| 261 | +<tr><td>53<td>2<td>CJK Miscellaneous<td>?? |
| 262 | +<tr><td>54<td>4<td>Enclosed CJK Letters and Months<td>U+3200-32FF |
| 263 | +<tr><td>55<td>8<td>CJK compatibility<td>U+3300-33FF |
| 264 | +<tr><th colspan="4"><hr> |
| 265 | +<tr><td>56<td>1<td>Hangul<td>U+AC00-D7FF |
| 266 | +<!-- <tr><td>57<td>0<td>RESERVED<td>- |
| 267 | +<tr><td>58<td> RESERVED<td>- --> |
| 268 | +<tr><td>59<td>8<td>CJK Unified Ideographs<td>U+4E00-9FFF |
| 269 | +<tr><th colspan="4"><hr> |
| 270 | +<!-- <tr><td>-<td><b>Surrogates ??</b><td>--> |
| 271 | +<tr><td>60<td>1<td>Private Use Area<td>U+E000-F8FF |
| 272 | +<tr><td>61<td>2<td>CJK Compatibility Ideographs<td>U+F900-FAFF |
| 273 | +<tr><td>62<td>4<td>Alphabetic Presentation Forms<td>U+FB00-FB4F |
| 274 | +<tr><td>63<td>8<td>Arabic Presentation Forms-A<td>U+FB50-FDFF |
| 275 | +<tr><th colspan="4"><hr> |
| 276 | +<tr><td>64<td>1<td>Combining Half Marks<td>U+FE20-FE2F<!-- this is only two characters --> |
| 277 | +<tr><td>65<td>2<td>CJK compatibility Forms<td>U+FE30-FE4F |
| 278 | +<tr><td>66<td>4<td>Small Form Variants<td>U+FE50-FE6F |
| 279 | +<tr><td>67<td>8<td>Arabic Presentation Forms-B<td>U+FE70-FEFF<!--FEFF also in Specials --> |
| 280 | +<tr><th colspan="4"><hr> |
| 281 | +<tr><td>68<td>1<td>Halfwidth and Fullwidth Forms<td>U+FF00-FFEF |
| 282 | +<tr><td>69<td>2<td>Specials<td>U+FFF0-FFFD |
| 283 | +<!-- this is just the 'unknown character' glyph --> |
| 284 | +<!-- <tr><td>70 - <br>127<td>0<td>RESERVED<td>? --> |
| 285 | +</table> |
| 286 | + |
| 287 | +<p class=comment>The TrueType bitfield system has the problem that it |
| 288 | +is tied to Unicode 1.1 and is unable to cope with Unicode expansion - |
| 289 | +it is unable to represent Tibetan for example. |
| 290 | + |
| 291 | + |
| 292 | + |
| 293 | +</BODY> |
| 294 | +</HTML> |
| 295 | +<!-- Keep this comment at the end of the file |
| 296 | +Local variables: |
| 297 | +mode: sgml |
| 298 | +sgml-declaration:"~/SGML/HTML4.decl" |
| 299 | +sgml-default-doctype-name:"html" |
| 300 | +sgml-minimize-attributes:t |
| 301 | +sgml-nofill-elements:("pre" "style" "br") |
| 302 | +sgml-live-element-indicator:t |
| 303 | +End: |
| 304 | +--> |
0 commit comments