在Windows中调整位图大小的最佳方法是什么?

时间:2011-11-19 03:24:07

标签: winapi bitmap gdi

所以,我正在编写一个文本编辑器。我使用双缓冲来绘制到屏幕上。所以基本上我有一个我在上面绘制的屏幕外位图,然后将其复制到屏幕上。现在,当文本编辑器的窗口调整大小时,我还需要调整屏幕外位图的大小。那么调整位图大小的好方法是什么?我想要删除旧对象并使用CreateCompatibleBitmap创建一个新的位图,但我想知道这是否是正确的方法。

语言:使用Win32 API的C ++

2 个答案:

答案 0 :(得分:3)

使用CreateCompatibleBitmap将起作用,然后您需要在其上调用BitBlt以将现有后备缓冲区的内容复制到调整大小的缓冲区。我不认为使用GDI有更有效的方法。

答案 1 :(得分:0)

如果正在考虑将CreateCompatibleBitmap与BitBlt一起使用,则可能要看一下StretchBlt。 StretchBlt的工作方式类似于BitBlt,但会调整源图像的大小以适合目标区域。