2.1.88 Part 1 Section 17.3.2.26, rFonts (Run Fonts)

a.   The standard does not limit the length of the ascii, hAnsi, cs, and eastAsia attributes.

Word restricts the value of these attributes to be less than 32 characters.

b.   The standard states that the use of each of the run fonts shall be determined by the Unicode character values of the run content, but does not explain precisely how this is done.

Word determines the use of each of these fonts from the Unicode character values in the following manner:

  • If the run has the cs element ("[ISO/IEC-29500-1] §17.3.2.7; cs") or the rtl element ("[ISO/IEC-29500-1] §17.3.2.30; rtl"), then the cs (or cstheme if defined) font is used, regardless of the Unicode character values of the run’s content.

  • If the eastAsia (or eastAsiaTheme if defined) attribute’s value is “Times New Roman” and the ascii (or asciiTheme if defined) and hAnsi (or hAnsiTheme if defined) attributes are equal, then the ascii (or asciiTheme if defined) font is used.

  • Otherwise, the following table is used. For all ranges not listed in the following table, the hAnsi (or hAnsiTheme if defined) font shall be used.

    Unicode Block

    Range

    Classification

    Basic Latin

    0000 – 007F

    ascii (or asciiTheme if defined)

    Latin-1 Supplement

    00A0 – 00FF

    hAnsi (or hAnsiTheme if defined), with the following exceptions:

    If hint is eastAsia, the following characters use eastAsia (or eastAsiaTheme if defined): A1, A4, A7 – A8, AA, AD, AF, B0 – B4, B6 – BA, BC – BF, D7, F7

    If hint is eastAsia and the language of the run is either Chinese Traditional or Chinese Simplified, the following characters use eastAsia (or eastAsiaTheme if defined): E0 – E1, E8 – EA, EC – ED, F2 – F3, F9 – FA, FC

    Latin Extended-A

    0100 – 017F

    hAnsi (or hAnsiTheme if defined), with the following exception:

    If hint is eastAsia, and the language of the run is either Chinese Traditional or Chinese Simplified, or the character set of the eastAsia (or eastAsiaTheme if defined) font is Chinese5 or GB2312 then eastAsia (or eastAsiaTheme if defined) font is used.

    Latin Extended-B

    0180 – 024F

    hAnsi (or hAnsiTheme if defined), with the following exception:

    If hint is eastAsia, and the language of the run is either Chinese Traditional or Chinese Simplified, or the character set of the eastAsia (or eastAsiaTheme if defined) font is Chinese5 or GB2312 then eastAsia (or eastAsiaTheme if defined) font is used.

    IPA Extensions

    0250 – 02AF

    hAnsi (or hAnsiTheme if defined), with the following exception:

    If hint is eastAsia, and the language of the run is either Chinese Traditional or Chinese Simplified, or the character set of the eastAsia (or eastAsiaTheme if defined) font is Chinese5 or GB2312 then eastAsia (or eastAsiaTheme if defined) font is used.

    Spacing Modifier Letters

    02B0 – 02FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Combining Diacritical Marks

    0300 – 036F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Greek

    0370 – 03CF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Cyrillic

    0400 – 04FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Hebrew

    0590 – 05FF

    ascii (or asciiTheme if defined)

    Arabic

    0600 – 06FF

    ascii (or asciiTheme if defined)

    Syriac

    0700 – 074F

    ascii (or asciiTheme if defined)

    Arabic Supplement

    0750 – 077F

    ascii (or asciiTheme if defined)

    Thaana

    0780 – 07BF

    ascii (or asciiTheme if defined)

    Hangul Jamo

    1100 – 11FF

    eastAsia (or eastAsiaTheme if defined)

    Latin Extended Additional

    1E00 – 1EFF

    hAnsi (or hAnsiTheme if defined), with the following exception:

    If the hint is eastAsia and the language of the run is Chinese Traditional or Chinese Simplified then eastAsia (or eastAsiaTheme if defined) is used.

    General Punctuation

    2000 – 206F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Superscripts and Subscripts

    2070 – 209F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Currency Symbols

    20A0 – 20CF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Combining Diacritical Marks for Symbols

    20D0 – 20FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Letter-like Symbols

    2100 – 214F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Number Forms

    2150 – 218F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Arrows

    2190 – 21FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Mathematical Operators

    2200 – 22FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Miscellaneous Technical

    2300 – 23FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Control Pictures

    2400 – 243F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Optical Character Recognition

    2440 – 245F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Enclosed Alphanumerics

    2460 – 24FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Box Drawing

    2500 – 257F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Block Elements

    2580 – 259F

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Geometric Shapes

    25A0 – 25FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Miscellaneous Symbols

    2600 – 26FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Dingbats

    2700 – 27BF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    CJK Radicals Supplement

    2E80 – 2EFF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    Kangxi Radicals

    2F00 – 2FDF

    eastAsia (or eastAsiaTheme if defined)

    Ideographic Description Characters

    2FF0 – 2FFF

    eastAsia (or eastAsiaTheme if defined)

    CJK Symbols and Punctuation

    3000 – 303F

    eastAsia (or eastAsiaTheme if defined)

    Hiragana

    3040 – 309F

    eastAsia (or eastAsiaTheme if defined)

    Katakana

    30A0 – 30FF

    eastAsia (or eastAsiaTheme if defined)

    Bopomofo

    3100 – 312F

    eastAsia (or eastAsiaTheme if defined)

    Hangul Compatibility Jamo

    3130 – 318F

    eastAsia (or eastAsiaTheme if defined)

    Kanbun

    3190 – 319F

    eastAsia (or eastAsiaTheme if defined)

    Enclosed CJK Letters and Months

    3200 – 32FF

    eastAsia (or eastAsiaTheme if defined)

    CJK Compatibility

    3300 – 33FF

    eastAsia (or eastAsiaTheme if defined)

    CJK Unified Ideographs Extension A

    3400 – 4DBF

    eastAsia (or eastAsiaTheme if defined)

    CJK Unified Ideographs

    4E00 – 9FAF

    eastAsia (or eastAsiaTheme if defined)

    Yi Syllables

    A000 – A48F

    eastAsia (or eastAsiaTheme if defined)

    Yi Radicals

    A490 – A4CF

    eastAsia (or eastAsiaTheme if defined)

    Hangul Syllables

    AC00 – D7AF

    eastAsia (or eastAsiaTheme if defined)

    High Surrogates

    D800 – DB7F

    eastAsia (or eastAsiaTheme if defined)

    High Private Use Surrogates

    DB80 – DBFF

    eastAsia (or eastAsiaTheme if defined)

    Low Surrogates

    DC00 – DFFF

    eastAsia (or eastAsiaTheme if defined)

    Private Use Area

    E000 – F8FF

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used.

    CJK Compatibility Ideographs

    F900 – FAFF

    eastAsia (or eastAsiaTheme if defined)

    Alphabetic Presentation Forms

    FB00 – FB4F

    hAnsi (or hAnsiTheme if defined), with the following exceptions:

    If the hint is eastAsia then eastAsia (or eastAsiaTheme if defined) is used for characters in the range FB00 – FB1C.

    For the range FB1D – FB4F, ascii (or asciiTheme if defined) is used.

    Arabic Presentation Forms-A

    FB50 – FDFF

    ascii (or asciiTheme if defined)

    CJK Compatibility Forms

    FE30 – FE4F

    eastAsia (or eastAsiaTheme if defined)

    Small Form Variants

    FE50 – FE6F

    eastAsia (or eastAsiaTheme if defined)

    Arabic Presentation Forms-B

    FE70 – FEFE

    ascii (or asciiTheme if defined)

    Halfwidth and Fullwidth Forms

    FF00 – FFEF

    eastAsia (or eastAsiaTheme if defined)

c.   The standard states that the default fonts for the ascii, hAnsi, cs, and eastAsia attributes are application-defined.

Word uses a default font of Times New Roman for all of these attributes.

d.   The standard states that all characters that are determined to be East Asian should use the value of eastAsia element as the font.

If the value of eastAsia attibute is "Times New Roman", and the value of the ascii (or asciiTheme) and the hAnsi (or hAnsiTheme) attributes are equal, then the value of the ascii (or asciiTheme, if defined) attribute is used as the font.

e.   The standard states the following regarding ascii and asciiTheme attributes: If the asciiTheme attribute is also specified, then this attribute (ascii) shall be ignored and that value shall be used instead. If the ascii attribute is also specified, then that attribute (asciiTheme) shall be ignored and this value shall be used instead.

These statements only apply to the current rFonts element that both attributes appear in and are not taken into consideration at different levels of the style hierarchy.

If an inherited style contains an rFonts element with the ascii attribute it will override any previously specified ascii or asciiTheme attribute in the style hierarchy. The same is true of the asciiTheme attribute, it will also override any previously specified asciiTheme or ascii attribute in the style hierarchy.

Similar behavior exists for cs, csTheme, eastAsia, easAsiaTheme, hAnsi, and hAnsiTheme attributes.