GdipGetRegionData(3w)

NAME

GdipGetRegionData (GDIPLUS.@)

SYNOPSIS

GpStatus WINGDIPAPI  GdipGetRegionData
 (
  GpRegion* region,
  BYTE*     buffer,
  UINT      size,
  UINT*     needed
 )

DESCRIPTION

Returns the header, followed by combining ops and region elements.

PARAMS

region [In] region to retrieve from.

buffer [Out] buffer to hold the resulting data.

size [In] size of the buffer.

needed [Out] (optional) how much data was written.

RETURNS

SUCCESS: Ok

FAILURE: InvalidParameter.

NOTES

The header contains the size, a checksum, a version string, and the number of children. The size does not count itself or the checksum. Version is always something like 0xdbc01001 or 0xdbc01002.

An element is a RECT, or PATH; Combining ops are stored as their CombineMode value. Special regions (infinite, empty) emit just their opcode; GpRectFs emit their code followed by their points; GpPaths emit their code followed by a second header for the path followed by the actual path data. Followed by the flags for each point. The pathheader contains the size of the data to follow, a version number again, followed by a count of how many points, and any special flags which may apply. 0x4000 means its a path of shorts instead of FLOAT.

Combining Ops are stored in reverse order from when they were constructed; the output is a tree where the left side combining area is always taken first.

IMPLEMENTATION

Defined in "gdiplusflat.h".

Implemented in "build/buildd-wine-unstable_1.1.32-1+b1-amd64-KnxYu0/wine-unstable-1.1.32/build32/dlls/gdiplus/region.c".

Debug channel "gdiplus".
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout