HBITMAPをPNG画像に保存したいと思っています。これはGDIAPIのみを使用して可能ですか?(私はCを使用しているので、GDI +は使用していません。)BMPファイルに保存するために、このような例しか見つかりませんでした。または、libpngを使用してGetDIBitsを使用する必要がありますか?
関連する質問(読書について)。
残念ながら、GDIはPNGをサポートしていません。
Microsoft Windows APIは、DLLから直接c++クラスを公開しません-c++標準はABIを定義しないため、使用される呼び出し規約と名前マングリングは、定義する特定の実装に任されています。
そのため、少なくともMetroまでは、WindowsOSでサポートされるすべての「C++」インターフェイスは実際にはC互換APIをエクスポートする通常のdllであり、必要なテンプレートとインラインコードを含むc++ヘッダーファイルのセットが付属しています。
そのため、GDI+にはMSDNで文書化されたフラットAPIがあります。