我有一些代码可以基于源位图绘制自己的矩形按钮。
大多数情况下,目标按钮比源位图图像大,StretchBlt工作正常。但是,当目标小于源图像时,StretchBlt拒绝填充整个目标区域。
我知道StretchBlt在缩小图像比例方面的质量不是很好,但我不太担心这一点。我只是不想丢失像素。
这里有一个链接,上面是源图像,下面是目标图像:
link text 注意,我实际上正在将源图像的部分收缩到目标中。我不是在缩小整个图像。例如,我用bitblt()复制角的大小,然后将角之间的水平像素数据从源图像拉伸(挤压)到目标DC。
我的源和目标坐标没有错误。如果我从srccopy变为whiteness,整个区域将按您的预期填充白色。在上面的broken.bmp图像中,没有像素没有被复制的灰色条。
以前有人遇到过这个问题吗?如果有,有人能提出解决方案吗?
干杯
我已经解决了这个问题。StretchBlt()没有问题。问题是,我创建的与我的工作DC相关联的位图太小,无法容纳图像,因此它正在截断图像。哎呀。