2.2.2.2.1.3.4.1 NineGrid Bitmap Information (NINEGRID_BITMAP_INFO)

The NINEGRID_BITMAP_INFO structure is used to describe a NineGrid source bitmap (see section 4.4). For more information about NineGrid bitmaps, see [NINEGRID].


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

flFlags

ulLeftWidth

ulRightWidth

ulTopHeight

ulBottomHeight

crTransparent

flFlags (4 bytes): A 32-bit, unsigned integer. Option flags for the NineGrid bitmap represented by this structure.

Value

Meaning

DSDNG_STRETCH

0x00000001

Indicates that the center portion of the source bitmap MUST be stretched to fill the center of the destination NineGrid.

DSDNG_TILE

0x00000002

Indicates that the center portion source bitmap MUST be tiled to fill the center of the destination NineGrid.

DSDNG_PERPIXELALPHA

0x00000004

Indicates that an AlphaBlend operation MUST be used to compose the destination NineGrid. The source bitmap is expected to have per-pixel alpha values. For a description of the AlphaBlend operation, see [MSDN-ABLEND].

DSDNG_TRANSPARENT

0x00000008

Indicates that a TransparentBlt operation MUST be used to compose the destination NineGrid. The crTransparent field MUST contain the transparent color. For a description of the TransparentBlt operation, see [MSDN-TransparentBlt].

DSDNG_MUSTFLIP

0x00000010

Indicates that the source NineGrid MUST be flipped on a vertical axis.

DSDNG_TRUESIZE

0x00000020

Indicates that the source bitmap MUST be transferred without stretching or tiling.

If the DSDNG_TILE (0x00000002) flag is not set, the DSDNG_STRETCH (0x00000001) flag is implied. If neither the DSDNG_PERPIXELALPHA (0x00000004) nor DSDNG_TRANSPARENT (0x00000008) is indicated, a BitBlt operation MUST be applied. For a description of the BitBlt operation, see [MSDN-BitBlt].

ulLeftWidth (2 bytes): A 16-bit, unsigned integer. The width of the left-side NineGrid border. For a visual illustration of this field, see section 4.4.

ulRightWidth (2 bytes): A 16-bit, unsigned integer. The width of the right-side NineGrid border. For a visual illustration of this field, see section 4.4.

ulTopHeight (2 bytes): A 16-bit, unsigned integer. The height of the top NineGrid border. For a visual illustration of this field, see section 4.4.

ulBottomHeight (2 bytes): A 16-bit, unsigned integer. The height of the bottom NineGrid border. For a visual illustration of this field, see section 4.4.

crTransparent (4 bytes): The RGB color in the source bitmap to treat as transparent represented using a Color Reference (section 2.2.2.2.1.3.4.1.1) structure. This field is used if the DSDNG_TRANSPARENT (0x00000008) flag is set in the flFlags field.