2.5.42 Etxp

The Etxp structure specifies font information for a BrtRRChgCell (section 2.4.763) record.

The following packet diagram specifies this structure.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

cchFontName

stFontName (62 bytes)

...

...

...

twpHeight

A

B

unused2

C

unused3

bls

sss

uls

bFamily

bCharSet

unused4

unused5

reserved

ifontScheme

xclrText

...

cchFontName (2 bytes): An unsigned integer that specifies the length of stFontName. The value of this field MUST be less than or equal to 31.

stFontName (62 bytes): A Unicode string that specifies the name of the font. Only the number of characters specified by cchFontName are used. Other characters, if they exist, MUST be 0x0000 and MUST be ignored.

twpHeight (4 bytes): An unsigned integer that specifies the height of the font in twips. The value MUST be greater than or equal to 0x0014 and MUST be less than or equal to 0x1FFF.

A - unused1 (1 bit): Undefined and MUST be ignored.

B - ftsItalic (1 bit): A bit that specifies whether the font is italic.

unused2 (5 bits): Undefined and MUST be ignored.

C - ftsStrikeout (1 bit): A bit that specifies whether a strikeout line is drawn through the horizontal middle of the text.

unused3 (24 bits): Undefined and MUST be ignored.

bls (2 bytes): An unsigned integer that specifies the weight of the font. The value MUST be greater than or equal to 0x0190 and less than or equal to 0x03E8. The value for normal text is 0x0190, and the value for bold text is 0x02BC.

sss (2 bytes): An unsigned integer that specifies whether subscript or superscript is used. The value of this field MUST be a value from the following table.

Value

Meaning

0x0000

None

0x0001

Superscript

0x0002

Subscript

uls (1 byte): An unsigned integer that specifies the type of underline to use. The value of this field MUST be a value from the following table.

Value

Meaning

0x00

None

0x01

Single

0x02

Double

0x21

Single accounting

0x22

Double accounting

bFamily (1 byte): An unsigned integer that specifies the font family that this font belongs to. The value of this field MUST be a value from the following table.

Value

Meaning

0x00

Not applicable

0x01

Roman

0x02

Swiss

0x03

Modern

0x04

Script

0x05

Decorative

 

bCharSet (1 byte): An unsigned integer that specifies the character set of this font. The value of this field 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

0xDE

THAI_CHARSET

0xEE

EASTEUROPE_CHARSET

0xFF

OEM_CHARSET

unused4 (1 byte): This value undefined and MUST be ignored.

unused5 (4 bytes): This value is undefined and MUST be ignored.

reserved (4 bytes):  This value MUST be 0 and MUST be ignored.

ifontScheme (4 bytes): An unsigned integer that specifies the font scheme to which this font belongs. When a font is part of a theme, as specified in [ISO/IEC29500-1:2016] section 14.2.7, the font is categorized as a major scheme or a minor scheme. When a new theme is chosen, every font that is part of the theme is updated to use the major scheme or the minor scheme. The value of this field MUST be a value from the following table.

Value

Meaning

0x00

None

0x01

Major scheme

0x02

Minor scheme

xclrText (8 bytes): A BrtColor (section 2.4.334) structure that specifies the color of this font.