场景
- 在开发
WTL/Win32
的时候,有时候在处理图片时需要让JPEG
和PNG
互相转换,比如截图需要另存为指定格式。那么如何不使用第三方库实现呢?
说明
-
Gdiplus
默认安装了5
种格式的图片编码器和8
种格式的图片解码器,因此这几种格式的互转是可以实现的。问题就是微软的MSDN
并没有给实现的例子,要自己摸索。- 编码器
image/bmp image/jpeg image/gif image/tiff image/png
- 解码器
image/bmp image/jpeg image/gif image/x-emf image/x-wmf image/tiff image/png image/x-icon
- 编码器
-
JPEG
和PNG
是最常见的格式,实现也是比较简单。简单说就是加载原图到Gdiplus::Image
,查找编码器, 之后通过调用Image::Save()
来转换格式。JPEG
可以设置转换质量。