2.3.6 Property Record Types

Property Record Types specify properties of the playback device context. The following are EMF+ property record types:

Name

Section

Description

EmfPlusSetAntiAliasMode

2.3.6.1

Sets the anti-aliasing mode for text output.

EmfPlusSetCompositingMode

2.3.6.2

Sets how source colors are combined with background colors.

EmfPlusSetCompositingQuality

2.3.6.3

Sets the desired level of quality for creating composite images from multiple objects.

EmfPlusSetInterpolationMode

2.3.6.4

Sets how image scaling, including stretching and shrinking, is performed.

EmfPlusSetPixelOffsetMode

2.3.6.5

Sets how pixels are centered with respect to the coordinates of the drawing surface.

EmfPlusSetRenderingOrigin

2.3.6.6

Sets the rendering origin for graphics output.

EmfPlusSetTextContrast

2.3.6.7

Sets text contrast according to the gamma correction value.

EmfPlusSetTextRenderingHint

2.3.6.8

Sets the quality of text rendering, including the type of anti-aliasing.

The generic structure of EMF+ property records is specified as follows:


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

Type

Flags

Size

DataSize

RecordData (variable)

...

Type (2 bytes): An unsigned integer that identifies the record type. The property record types are listed below. See the table above for descriptions of these records.

Name

Value

EmfPlusSetRenderingOrigin

0x401D

EmfPlusSetAntiAliasMode

0x401E

EmfPlusSetTextRenderingHint

0x401F

EmfPlusSetTextContrast

0x4020

EmfPlusSetInterpolationMode

0x4021

EmfPlusSetPixelOffsetMode

0x4022

EmfPlusSetCompositingMode

0x4023

EmfPlusSetCompositingQuality

0x4024

Flags (2 bytes): An unsigned integer that contains information for some records on how the operation is to be performed and on the structure of the record.

Size (4 bytes): An unsigned integer that defines the 32-bit-aligned size of the entire record in bytes, including the 12-byte record header and the record-specific data.

DataSize (4 bytes): An unsigned integer that defines the 32-bit-aligned number of bytes of data in the RecordData field that follows. This number does not include the 12-byte record header.

RecordData (variable): An optional, variable-length array of bytes that, if present, defines the data specific to individual records. For specifications of the additional information, if any, which is contained within this field, see individual record definitions.