2.2.3.4 Font Offset Records

Font Offset records are of six types, and they all have the structure shown as follows. Font offset records specify offsets to embedded font definition records in an EMF spool format metafile.


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

ulID

cjSize

OffsetLow

OffsetHigh

ulID (4 bytes): A 32-bit unsigned integer that identifies the type of record, from the RecordType (section 2.1.1) enumeration.

Value

Meaning

EMRI_ENGINE_FONT_EXT

0x0000000F

This type of record specifies an offset to a TrueType font within a page content record.

EMRI_TYPE1_FONT_EXT

0x00000010

This type of record specifies an offset to a PostScript Type 1 font within a page content record.

EMRI_DESIGNVECTOR_EXT

0x00000011

This type of record specifies an offset to a TrueType font design vector within a page content record.

EMRI_SUBSET_FONT_EXT

0x00000012

This type of record specifies an offset to embedded subset fonts within a page content record.

EMRI_DELTA_FONT_EXT

0x00000013

This type of record specifies an offset to embedded delta fonts within a page content record.

EMRI_EMBED_FONT_EXT

0x00000015

This type of record specifies an offset to embedded font identifiers within a page content record.

cjSize (4 bytes): A 32-bit unsigned integer that specifies the size, in bytes, of the data attached to the record. The size of each record in EMF spool format MUST be aligned to a multiple of 4 bytes.

OffsetLow (4 bytes): The lower 32 bits of a 64-bit unsigned integer that contains the font offset.

OffsetHigh (4 bytes): The upper 32 bits of a 64-bit unsigned integer that contains the font offset.

The offset is the number of bytes from the start of the offset record to the start of a font definition (section 2.2.3.3) record, which is embedded within a page content record. Font definition records are embedded in EMR_COMMENT_EMFSPOOL records, as specified in [MS-EMF] section 2.3.3.3.