c++ - 你如何缩放 CBitmap 对象?

标签 c++ mfc gdi+ resize cbitmap

我已经从资源 ID 加载了一个 CBitmap 对象,现在我想将它在每个维度上缩放到其大小的 50%。我该怎么做?

最佳答案

  1. 将您的 CBitmap obj 选择到 memDC A(使用 CDC::SelectObject())
  2. 创建一个具有所需大小的新 CBitmap 并将其选择到另一个 MemDC B
  3. 使用 CDC::stretchblt(...) 将 MemDC A 中的 bmp 拉伸(stretch)到 MemDC B 中
  4. 取消选择您的 CBitmap 对象(通过选择从之前调用 SelectObject 返回的内容)
  5. 使用新的 CBitmap

关于c++ - 你如何缩放 CBitmap 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2770855/

相关文章:

c++ - 在 Visual Studio (2005) 下使用 Makefile 代替解决方案/项目文件

c++ - 在 C++ 中将字符串转换为 vector

c++ - 有什么办法可以加快频繁的文件写入操作吗? C文件

c++ - 为什么 CDC::SelectObject(CFont*) 接受 CFont 对象而不是指针?

c# - C# 上的 DrawString 文本太粗

c# - 使用 EPPlus 在 GDI+ Drawings.AddPicture 中发生一般性错误

c++ - 我的代码在调试时运行良好,但一运行就崩溃

C++模板参数推导过程

c++ - 将 CFileDialog 的默认 View 设置为大图标

c++ - 在内存中创建 GDI+ 位图,然后另存为 png