BitBlt 函数原型:
BitBlt (hdcDst, xDst, yDst, cx, cy, hdcSrc, xSrc, ySrc, dwROP);
源图是指从(xSrc, ySrc)处和hdcSrc所标识的窗口的右下角所确定的矩形区域,目标图块的区域由 (xDst, yDst, cx, cy)确定的矩形区域限定。
BitBlt函数只复制了源图中(xSrc, ySrc, cx, cy)大小的一块图块,并非复制全部源图,(宽和高由目标区域的宽和高限定)。
BitBlt函数只复制传输,而不进行拉伸和压缩。
StretchBlt函数原型:
StretchBlt(hdcDst, xDst, yDst, cxDst, cyDst,
hdcSrc, xSrc, ySrc, cxSrc, cySrc, dwROP);
源图实际上仍是从(xSrc, ySrc)处和hdcSrc所标识的窗口的右下角所确定的矩形区域,只不过StretchBlt函数隐含完成了两步操作:
即:先在源图中截取(xSrc, ySrc, cxSrc, cySrc)图块,再在目标区域(xDst, yDst, cxDst, cyDst)进行拉伸或压缩。
可以直接将(xSrc, ySrc, cxSrc, cySrc)区域看作是获取的源图,(xDst, yDst, cxDst, cyDst)作为目标区域,StrechBlt实现源图到目标区域的传输。
本文详细解析了Windows绘图API中的BitBlt与StretchBlt函数。BitBlt用于简单复制图像块,而StretchBlt则能实现图像的拉伸与压缩。文章深入介绍了这两种函数的工作原理及参数含义。
555

被折叠的 条评论
为什么被折叠?



