2.4.122 Font
The Font record specifies a font and font formatting information.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
dyHeight |
A |
B |
C |
D |
E |
F |
G |
H |
reserved |
||||||||||||||||||||||
icv |
bls |
||||||||||||||||||||||||||||||
sss |
uls |
bFamily |
|||||||||||||||||||||||||||||
bCharSet |
unused3 |
fontName (variable) |
|||||||||||||||||||||||||||||
... |
dyHeight (2 bytes): An unsigned integer that specifies the height of the font in twips. SHOULD<87> be greater than or equal to 20 and less than or equal to 8191. MUST be greater than or equal to 20 and less than or equal to 8191, or 0.
A - unused1 (1 bit): Undefined and MUST be ignored.
B - fItalic (1 bit): A bit that specifies whether the font is italic.
C - unused2 (1 bit): Undefined and MUST be ignored. MUST be 1 when uls is greater than 0x00.
D - fStrikeOut (1 bit): A bit that specifies whether the font has strikethrough formatting applied.
E - fOutline (1 bit): A bit that specifies whether the font has an outline effect applied.
F - fShadow (1 bit): A bit that specifies whether the font has a shadow effect applied.
G - fCondense (1 bit): A bit that specifies whether the font is condensed.
H - fExtend (1 bit): A bit that specifies whether the font is extended.
reserved (8 bits): MUST be zero, and MUST be ignored.
icv (2 bytes): An unsigned integer that specifies the color of the font. The value SHOULD<88> be an IcvFont value. The value MUST be an IcvFont value, or 0.
bls (2 bytes): An unsigned integer that specifies the font weight. The value SHOULD<89> be a value from the following table. This value MUST be 0, or greater than or equal to 100 and less than or equal to 1000.
-
Value
Meaning
400
Normal font weight
700
Bold font weight
sss (2 bytes): An unsigned integer that specifies whether superscript, subscript, or normal script is used. The value MUST be one of the following:
-
Value
Meaning
0x0000
Normal script
0x0001
Superscript
0x0002
Subscript
uls (1 byte): An unsigned integer that specifies the underline style. The value MUST be one of the following:
-
Value
Meaning
0x00
No underline
0x01
Single underline
0x02
Double underline
0x21
0x22
bFamily (1 byte): An unsigned integer that specifies the font family this font belongs to. MUST be a value from the following table:<90>
-
Value
Meaning
0x00
Not applicable
0x01
Roman
0x02
Swiss
0x03
Modern
0x04
Script
0x05
Decorative
For more information about font family, see the Windows API LOGFONT structure in [MSDN-FONTS].
bCharSet (1 byte): An unsigned integer that specifies the character set. MUST be a value from the following table:
Value |
Meaning |
---|---|
0x00 |
ANSI_CHARSET |
0x01 |
DEFAULT_CHARSET |
0x02 |
SYMBOL_CHARSET |
0x4D |
MAC_CHARSET |
0x80 |
SHIFTJIS_CHARSET |
0x81 |
HANGEUL_CHARSET |
0x81 |
HANGUL_CHARSET |
0x82 |
JOHAB_CHARSET |
0x86 |
GB2312_CHARSET |
0x88 |
CHINESEBIG5_CHARSET |
0xA1 |
GREEK_CHARSET |
0xA2 |
TURKISH_CHARSET |
0xA3 |
VIETNAMESE_CHARSET |
0xB1 |
HEBREW_CHARSET |
0xB2 |
ARABIC_CHARSET |
0xBA |
BALTIC_CHARSET |
0xCC |
RUSSIAN_CHARSET |
0xDD |
THAI_CHARSET |
0xEE |
EASTEUROPE_CHARSET |
0xFF |
OEM_CHARSET |
For more information about character set, see the Windows API LOGFONT structure in [MSDN-FONTS].
unused3 (1 byte): Undefined and MUST be ignored.
fontName (variable): A ShortXLUnicodeString structure that specifies the name of this font. String length MUST be greater than or equal to 1 and less than or equal to 31. The fontName.fHighByte field MUST equal 1. MUST NOT contain any null characters.