2.3.3.3 EmfPlusHeader Record
The EmfPlusHeader record specifies the start of EMF+ data in the metafile.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Type |
Flags |
||||||||||||||||||||||||||||||
Size |
|||||||||||||||||||||||||||||||
DataSize |
|||||||||||||||||||||||||||||||
Version |
|||||||||||||||||||||||||||||||
EmfPlusFlags |
|||||||||||||||||||||||||||||||
LogicalDpiX |
|||||||||||||||||||||||||||||||
LogicalDpiY |
Type (2 bytes): An unsigned integer that identifies this record type as EmfPlusHeader from the RecordType enumeration. The value MUST be 0x4001.
Flags (2 bytes): An unsigned integer that provides information about the structure of the metafile.
-
0
1
2
3
4
5
6
7
8
91
0
1
2
3
4
5
6
7
8
92
0
1
2
3
4
5
6
7
8
93
0
1X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
D
-
X (1 bit): Reserved and MUST be ignored.
-
D (1 bit): If set, this flag indicates that this metafile is EMF+ Dual, which means that it contains two sets of records, each of which completely specifies the graphics content. If clear, the graphics content is specified by EMF+ records, and possibly EMF records ([MS-EMF] section 2.3) that are preceded by an EmfPlusGetDC record. If this flag is set, EMF records alone SHOULD suffice to define the graphics content. Note that whether the EMF+ Dual flag is set or not, some EMF records are always present, namely EMF control records and the EMF records that contain EMF+ records.
Size (4 bytes): An unsigned integer that specifies the 32-bit-aligned size of the entire record in bytes, including the 12-byte record header and record-specific data. For this record type, the value is 0x0000001C.
DataSize (4 bytes): An unsigned integer that specifies the 32-bit-aligned number of bytes of data in the record-specific data that follows. This number does not include the size of the invariant part of this record. For this record type, the value is 0x00000010.
Version (4 bytes): An EmfPlusGraphicsVersion object that specifies the version of operating system graphics that was used to create this metafile.
EmfPlusFlags (4 bytes): An unsigned integer that contains information about how this metafile was recorded.
-
0
1
2
3
4
5
6
7
8
91
0
1
2
3
4
5
6
7
8
92
0
1
2
3
4
5
6
7
8
93
0
1X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V
-
X (1 bit): Reserved and MUST be ignored.
-
V (1 bit): If set, this flag indicates that the metafile was recorded with a reference device context for a video display. If clear, the metafile was recorded with a reference device context for a printer.
LogicalDpiX (4 bytes): An unsigned integer that specifies the horizontal resolution for which the metafile was recorded, in units of pixels per inch.
LogicalDpiY (4 bytes): An unsigned integer that specifies the vertical resolution for which the metafile was recorded, in units of lines per inch.
The EmfPlusHeader record MUST be embedded in an EMF EMR_COMMENT_EMFPLUS record, which MUST be the record immediately following the EMF header in the metafile.
See section 2.3.3 for the specification of additional control record types.