(这与 How would I load a PNG image using Win32/GDI (no GDI+ if possible)? 上的问题有关。)

大家好,

我想知道,鉴于您有一个 PNG 资源嵌入一个二进制文件中,ID 为 IDB_PNG1 ,还有一个 LPDRAWITEMSTRUCT 要绘制(这意味着您有 HDC 和目标矩形),您如何将该图像绘制使用 StretchDIBits 的屏幕?我以前使用过 BitBltTransparentBlt,但 StretchDIBits 的工作方式似乎不同,而且 LoadImage 似乎不适用于 PNG。

谢谢!

(注意:我使用的语言是 C++,但这不是太重要……C、C#、Visual Basic 等都可以;我只是想弄清楚步骤,而不是所需的确切代码。)

最佳答案

我认为位图中的 PNG 支持仅真正供打印机驱动程序使用。对于屏幕显示,您可能必须使用一些代码(例如 libpng )自己解压缩 PNG 数据。

关于c++ - 如何使用 LoadImage 和 StretchDIBits 绘制 PNG 图像?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4568057/

10-13 07:45
查看更多