2.2.2.2.1.3.6.7 Draw GDI+ End (DRAW_GDIPLUS_END_ORDER)
The Draw GDI+ End Alternate Secondary Drawing Order contains the final batch of GDI+ 1.1 drawing primitives that comprise a rendering update sent by the server to the client. Support for GDI+ 1.1 rendering is specified in the Draw GDI+ Capability Set (section 2.2.1.3).
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
header |
pad1Octet |
cbSize |
|||||||||||||||||||||||||||||
|
cbTotalSize |
|||||||||||||||||||||||||||||||
|
cbTotalEmfSize |
|||||||||||||||||||||||||||||||
|
emfRecords (variable) |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
header (1 byte): An Alternate Secondary Order Header, as defined in section 2.2.2.2.1.3.1.1. The embedded orderType field MUST be set to TS_ALTSEC_GDIP_END (0x07).
pad1Octet (1 byte): An 8-bit, unsigned integer. Padding. Values in this field MUST be ignored.
cbSize (2 bytes): A 16-bit, unsigned integer. The size in bytes of the emfRecords field.
cbTotalSize (4 bytes): A 32-bit, unsigned integer. The cumulative size in bytes of the data in all of the emfRecords fields in this and previous Draw GDI+ First and Draw GDI+ Next Orders.
cbTotalEmfSize (4 bytes): A 32-bit, unsigned integer. The cumulative size, in bytes, of the EMF+ record data (in this and previous Draw GDI+ First and Draw GDI+ Next Orders) that MUST be passed to the GDI+ subsystem for rendering. Because references to GDI+ primitives cached with Draw GDI+ Cache Orders (sections 2.2.2.2.1.3.6.2, 2.2.2.2.1.3.6.3, and 2.2.2.2.1.3.6.4) can be contained in the EMF+ Records embedded in the emfRecords field, the total size of the EMF+ Records passed to the GDI+ subsystem for rendering can be larger than what was sent on the wire.
emfRecords (variable): A collection of EMF+ Records specified in [MS-EMFPLUS] section 2.3. The size of the emfRecords field is given by the cbSize field. If the most significant bit of the Size field of an EMF+ Record is set, the EMF+ Record data contains a 16-bit cache index that MUST be used to retrieve a cached GDI+ 1.1 primitive from the appropriate GDI+ cache; the primitive MUST then be embedded in the EMF+ Record stream.