3.2.2.27 EMR_EXTTEXTOUTW Example 5

This section provides an example of an EMF EMR_EXTTEXTOUTW record ([MS-EMF] section 2.3.5.8).

 00064430:            54 00 00 00 d0 00 00 00 67 01 00 00 
 00064440:C7 01 00 00 61 03 00 00 0A 02 00 00 01 00 00 00 
 00064450:47 A2 E1 40 76 84 E1 40 67 01 00 00 FD 01 00 00 
 00064460:16 00 00 00 4C 00 00 00 04 10 00 00 00 00 00 00 
 00064470:00 00 00 00 F4 0b 00 00 78 0F 00 00 78 00 00 00 
 00064480:50 00 61 00 67 00 65 00 20 00 31 00 20 00 6F 00 
 00064490:72 00 69 00 65 00 6e 00 74 00 61 00 74 00 69 00 
 000644A0:6F 00 6E 00 20 00 69 00 73 00 20 00 21 00 00 00 
 000644B0:1B 00 00 00 1D 00 00 00 1B 00 00 00 0F 00 00 00 
 000644C0:1E 00 00 00 0F 00 00 00 1E 00 00 00 14 00 00 00 
 000644D0:11 00 00 00 1B 00 00 00 1E 00 00 00 11 00 00 00 
 000644E0:1B 00 00 00 11 00 00 00 11 00 00 00 1E 00 00 00 
 000644F0:1E 00 00 00 0E 00 00 00 11 00 00 00 17 00 00 00 
 00064500:0F 00 00 00 


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 (0x00000054)

Size (0x000000D0)

Bounds (0x00000167)

... (0x000001C7)

... (0xF00000361)

... (0x0000020A)

iGraphicsMode (0x00000001)

exScale (0x40E1A247)

eyScale (0x40E18476)

EmrText (variable)

...

...

Type (4 bytes): 0x00000054 identifies the record type as EMR_EXTTEXTOUTW.

Size (4 bytes): 0x000000D0 is the size of this record in bytes.

Bounds (16 bytes): 0x00000167, 0x000001C7, 0xF00000361, 0x0000020A values are not used.

iGraphicsMode (4 bytes): 0x00000001 specifies the GM_COMPATIBLE graphics mode ([MS-EMF] section 2.1.16).

exScale (4 bytes): 0x40E1A247 specifies the X scale from Page units to .01mm units if the graphics mode is GM_COMPATIBLE.

eyScale (4 bytes): 0x40E18476 specifies the Y scales from Page units to .01mm units if the graphics mode is GM_COMPATIBLE.

EmrText (variable): An EmrText object ([MS-EMF] section 2.2.5). This is followed by strings and spacing arrays.


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

Reference (0x00000167)

... (0x000001FD)

Chars (0x00000016)

offString (0x0000004C)

Options (0x00001004)

Rectangle (0x00000000)

... (0x00000000)

... (0x00000BF4)

... (0x00000F78)

offDx (0x00000078)

text ("Page 1 orientation is !")

Reference: 0x00000167, 0x000001FD specifies the coordinates of the reference point used to position the string.

Chars: 0x00000016 specifies the number of characters in the string.

offString: 0x0000004C specifies the offset to the string.

Options: 0x00001004 indicates that the rectangle defined in the Rectangle field is used for clipping ([MS-EMF] section 2.1.11).

Rectangle: 0x00000000, 0x00000000, 0x00000BF4, 0x00000F78 defines the clipping rectangle in logical units.

offDx: 0x00000078 specifies the offset to the intercharacter spacing array.

text: "Page 1 orientation is !".