我正在寻找将 HBITMAP 保存到 PNG 图像。这可能只使用 GDI API 吗?(我使用的是 C,所以没有 GDI+。)我只找到了这样的示例,以保存到 BMP 文件。或者我应该使用libpng并使用GetDIBits吗?
相关问题(关于阅读)。
不幸的是,GDI 不支持 PNG。
Microsoft Windows API 不直接从 DLL 公开任何c++ 类 - c++ 标准没有定义 ABI,因此,使用的调用约定和名称修改留给特定的实现来定义。
因此,至少在 Metro 之前,Windows 操作系统支持的所有“C++”接口实际上都是一个导出 C 兼容 API 的常规 dll,以及一组带有必要模板和内联代码的 c++ 头文件。
因此,GDI+ 有一个在 MSDN 中记录的Flat API 。