The PlgBlt function performs a bit-block transfer of the bits of color data from the specified rectangle in the source device context to the specified parallelogram in the destination device context. If the given bitmask handle identifies a valid monochrome bitmap, the function uses this bitmap to mask the bits of color data from the source rectangle.
BOOL PlgBlt(
HDC hdcDest, |
// handle to destination device context |
CONST POINT *lpPoint, |
// vertices of destination parallelogram |
HDC hdcSrc, |
// handle to source device context |
int nXSrc, |
// x-coord. of upper-left corner of source rect. |
int nYSrc, |
// y-coord. of upper-left corner of source rect. |
int nWidth, |
// width of source rectangle |
int nHeight, |
// height of source rectangle |
HBITMAP hbmMask, |
// handle to bitmask |
int xMask, |
// x-coord. of upper-left corner of bitmask rect. |
int yMask |
// y-coord. of upper-left corner of bitmask rect. |
); |
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
The fourth vertex of the parallelogram (D) is defined by treating the first three points (A, B, and C) as vectors and computing D = B + C - A.
If the bitmask exists, a value of 1 in the mask indicates that the source pixel color should be copied to the destination. A value of 0 in the mask indicates that the destination pixel color is not to be changed.
If the mask rectangle is smaller than the source and destination rectangles, the function replicates the mask pattern.
Scaling, translation, and reflection transformations are allowed in the source device context; however, rotation and shear transformations are not.
If the mask bitmap is not a monochrome bitmap, an error occurs.
The stretching mode for the destination device context is used to determine how to stretch or compress the pixels, if that is necessary.
When an enhanced metafile is being recorded, an error occurs if the source device context identifies an enhanced-metafile device context.
The destination coordinates are transformed according to the destination device context; the source coordinates are transformed according to the source device context. If the source transformation has a rotation or shear, an error is returned.
If the destination and source rectangles do not have the same color format, PlgBlt converts the source rectangle to match the destination rectangle.
Not all devices support the PlgBlt function. For more information, see the description of the RC_BITBLT raster capability in the GetDeviceCaps function.
If the source and destination device contexts represent incompatible devices, PlgBlt returns an error.
BitBlt, GetDeviceCaps, MaskBlt, SetStretchBltMode, StretchBlt
file: /Techref/os/win/api/win32/func/src/f67_13.htm, 7KB, , updated: 2000/4/7 12:19, local time: 2024/8/23 19:11,
18.188.178.203:LOG IN
|
©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions? <A HREF="http://piclist.com/tecHREF/os/win/api/win32/func/src/f67_13.htm"> PlgBlt</A> |
Did you find what you needed? |
![]() o List host: MIT, Site host massmind.org, Top posters @none found - Page Editors: James Newton, David Cary, and YOU! * Roman Black of Black Robotics donates from sales of Linistep stepper controller kits. * Ashley Roll of Digital Nemesis donates from sales of RCL-1 RS232 to TTL converters. * Monthly Subscribers: Gregg Rew. on-going support is MOST appreciated! * Contributors: Richard Seriani, Sr. |
Ashley Roll has put together a really nice little unit here. Leave off the MAX232 and keep these handy for the few times you need true RS232! |
.