如何使用 ATL::CImage 旋转并同时使图像半透明?
How can I rotate and make the image semitransparent at the same time by using ATL::CImage?
我刚开始在我的 MFC 项目中使用 ATL::CImage,这是一个非常基本的问题。
我知道 ATL::CImage 成员支持用于控制透明度的 AlphaBlend() 和用于旋转的 plgblt()。但据我了解,它们都是DC上仅"Displaying"的独立功能。
如何应用图像的透明度和旋转以及 display/save 它?
我知道 GDI+ 支持我想要的一切,但我也想知道如何用 CImage class 成员实现它们。
谢谢。
这不可能以同样的方式进行。您可以为每个操作使用一个临时 DC。
- 使用所需大小的位图创建 DC。
- 执行CImage到DC的操作。
- 从 DC 获取 Bitmap 并形成一个新的 CImage 或简单地使用 DC。
更好的方法是始终使用 GDI+ 来执行此类操作。 CImage只有在需要存储中间结果,或者需要重用的时候才需要。
我刚开始在我的 MFC 项目中使用 ATL::CImage,这是一个非常基本的问题。 我知道 ATL::CImage 成员支持用于控制透明度的 AlphaBlend() 和用于旋转的 plgblt()。但据我了解,它们都是DC上仅"Displaying"的独立功能。 如何应用图像的透明度和旋转以及 display/save 它?
我知道 GDI+ 支持我想要的一切,但我也想知道如何用 CImage class 成员实现它们。
谢谢。
这不可能以同样的方式进行。您可以为每个操作使用一个临时 DC。
- 使用所需大小的位图创建 DC。
- 执行CImage到DC的操作。
- 从 DC 获取 Bitmap 并形成一个新的 CImage 或简单地使用 DC。
更好的方法是始终使用 GDI+ 来执行此类操作。 CImage只有在需要存储中间结果,或者需要重用的时候才需要。