Windows の MSPAINT の画像の保存の仕組み

Windows 2000以前

Image API である、Filter API を参照して、そこから画像を保存したり、ロードしたりします
Officeをインストールすると、MSPAINT でGIFやJPEGが扱えるようになるのはこのためです。

Windows XP以降
内部で GdipSaveImageToFile をコールします。

本来は、 GdipSetPropertyItem でProperty Item Descriptions で PropertyTagJPEGQuality を JPEGに指定するのですが、その処理が見当たりません。どうやら既定値をそのまま利用するようです。

GDIPLUS.DLL の中身を見てみると・・・。
BuiltIn JPEG Codec というのが呼ばれてるのが分かります。
結局は、OLE の OSネイティブの機能に依存するわけですね ・ω・;

調べてみると、JPEG クォリティは既定値が 75前後であることが分かりました。

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です