2.2.2.45 EmfPlusTextureBrushData Object

The EmfPlusTextureBrushData object specifies a texture image for a graphics brush.


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

BrushDataFlags

WrapMode

OptionalData (variable)

...

BrushDataFlags (4 bytes): An unsigned integer that specifies the data in the OptionalData field. This value MUST be composed of BrushData flags (section 2.1.2.1). The following flags are relevant to a texture brush:

Name

Value

BrushDataTransform

0x00000002

BrushDataIsGammaCorrected

0x00000080

BrushDataDoNotTransform

0x00000100

WrapMode (4 bytes): A signed integer from the WrapMode enumeration (section 2.1.1.33) that specifies how to repeat the texture image across a shape, when the image is smaller than the area being filled.

OptionalData (variable): An optional EmfPlusTextureBrushOptionalData object (section 2.2.2.46) that specifies additional data for the texture brush. The specific contents of this field are determined by the value of the BrushDataFlags field.

Graphics brushes are specified by EmfPlusBrush objects (section 2.2.1.1). A texture brush paints an image, which in this context is called a "texture". The texture consists of either a portion of an image or a scaled version of an image, which is specified by an EmfPlusImage object (section 2.2.1.4) in the OptionalData field.

Gamma correction controls the overall brightness and intensity of an image. Uncorrected images can look either bleached out or too dark. Varying the amount of gamma correction changes not only the brightness but also the ratios of red to green to blue. The need for gamma correction arises because an output device might not render colors in the same intensity as the input image.

See section 2.2.2 for the specification of additional structure objects.