EngTransparentBlt function (winddi.h)
The EngTransparentBlt function provides bit-block transfer capabilities with transparency.
Syntax
ENGAPI BOOL EngTransparentBlt(
[in] SURFOBJ *psoDst,
[in] SURFOBJ *psoSrc,
[in, optional] CLIPOBJ *pco,
[in, optional] XLATEOBJ *pxlo,
[in] RECTL *prclDst,
[in] RECTL *prclSrc,
[in] ULONG TransColor,
[in] ULONG bCalledFromBitBlt
);
Parameters
[in] psoDst
Pointer to the SURFOBJ structure that identifies the target surface on which to draw.
[in] psoSrc
Pointer to the SURFOBJ structure that identifies the source surface of the bit-block transfer.
[in, optional] pco
Pointer to a CLIPOBJ structure. The CLIPOBJ_Xxx service routines are provided to enumerate the clip region as a set of rectangles. This enumeration limits the area of the destination that is modified. Whenever possible, GDI simplifies the clipping involved.
[in, optional] pxlo
Pointer to a XLATEOBJ structure that tells how the source color indices should be translated for writing to the target surface.
[in] prclDst
Pointer to a RECTL structure that defines the rectangular area to be modified. This rectangle is specified in the coordinate system of the destination surface and is defined by two points: upper left and lower right. The rectangle is lower-right exclusive; that is, its lower and right edges are not a part of the bit-block transfer. The two points that define the rectangle are always well ordered.
The driver must never call EngTransparentBlt with an empty destination rectangle.
[in] prclSrc
Pointer to a RECTL structure that defines the rectangular area to be copied. This rectangle is specified in the coordinate system of the source surface and is defined by two points: upper left and lower right. The two points that define the rectangle are always well ordered.
The source rectangle will never exceed the bounds of the source surface, and so will never overhang the source surface.
This rectangle is mapped to the destination rectangle defined by prclDst. The driver must never call EngTransparentBlt with an empty source rectangle.
[in] TransColor
Specifies the physical transparent color, in the source surface's format. This is a color index value that has been translated to the source surface's palette. For more information, see the Remarks section.
[in] bCalledFromBitBlt
Reserved. This parameter must be set to zero.
Return value
EngTransparentBlt returns TRUE upon success. Otherwise, it returns FALSE.
Remarks
The driver should call EngTransparentBlt if it has hooked DrvTransparentBlt and it is called to do something that it does not support.
Bit-block transfer with transparency is supported between two device-managed surfaces or between a device-managed surface and a GDI-managed standard format bitmap. Currently, GDI supports only BMF_4BPP and BMF_8BPP source surfaces.
The pixels on the source surface that match the transparent color specified by iTransparentColor are not copied. For a detailed explanation of transparent blts, see Copying Bitmaps.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Windows 2000 and later versions of the Windows operating systems. |
Target Platform | Universal |
Header | winddi.h (include Winddi.h) |
Library | Win32k.lib |
DLL | Win32k.sys |