2.2.2.46 EmfPlusTextureBrushOptionalData Object

The EmfPlusTextureBrushOptionalData object specifies optional data for a texture brush.

Note: Each field of this object is optional and might not be present in the OptionalData field of an EmfPlusTextureBrushData object (section 2.2.2.45), depending on the BrushData flags (section 2.1.2.1) set in its BrushDataFlags field. Although it is not practical to represent every possible combination of fields present or absent, this section specifies their relative order in the object. The implementer is responsible for determining which fields are actually present in a given metafile record, and for unmarshaling the data for individual fields separately and appropriately.


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

TransformMatrix (24 bytes, optional)

...

...

...

ImageObject (variable)

...

TransformMatrix (24 bytes): An optional EmfPlusTransformMatrix object (section 2.2.2.47) that specifies a world space to device space transform for the texture brush. This field MUST be present if the BrushDataTransform flag is set in the BrushDataFlags field of the EmfPlusTextureBrushData object.

ImageObject (variable): An optional EmfPlusImage object (section 2.2.1.4) that specifies the brush texture. This field MUST be present if the size of the EmfPlusObject record (section 2.3.5.1) that defines this texture brush is large enough to accommodate an EmfPlusImage object in addition to the required fields of the EmfPlusTextureBrushData object and optionally an EmfPlusTransformMatrix object.

Graphics brushes are specified by EmfPlusBrush objects (section 2.2.1.1).

See section 2.2.2 for the specification of additional structure objects.