C++ BMP图片转换为PNG图片
来源:互联网 发布:淘宝白底图片怎么拍 编辑:程序博客网 时间:2024/05/20 06:30
#include <gdiplus.h>
#include <stdio.h>
using namespace Gdiplus;
BOOL GetEncoderClsid(WCHAR* pFormat,CLSID* pClsid)
{
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
UINT num = 0,size = 0;
ImageCodecInfo* pImageCodecInfo = NULL;
GetImageEncodersSize(&num,&size);
if (size == 0)
{
return FALSE;
}
pImageCodecInfo = (Gdiplus::ImageCodecInfo*)(malloc(size));
if (pImageCodecInfo == NULL)
{
return FALSE;
}
GetImageEncoders(num,size,pImageCodecInfo);
BOOL bfound = FALSE;
for (UINT i = 0;!bfound && i < num; i++)
{
if (_wcsicmp(pImageCodecInfo[i].MimeType,pFormat) == 0)
{
*pClsid = pImageCodecInfo[i].Clsid;
bfound = TRUE;
}
}
GdiplusShutdown(gdiplusToken);
free(pImageCodecInfo);
return bfound;
}
BOOL BMptoPNG(LPCWSTR StrBMp,LPCWSTR StrPNG)
{
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
Gdiplus::GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
CLSID encoderClsid;
Status stat;
Image* image = NULL;
image = Gdiplus::Bitmap::FromFile(StrBMp,TRUE);
if (!GetEncoderClsid(L"image/png",&encoderClsid))
{
return FALSE;
}
stat = image->Save(StrPNG,&encoderClsid,NULL);
if (stat != Gdiplus::Ok)
{
return FALSE;
}
//Gdiplus::GdiplusShutdown(gdiplusToken);
delete image;
return TRUE;
}
阅读全文
0 0
- C++ BMP图片转换为PNG图片
- java 将bmp图片转换为png图片
- Bmp 图片转换为 jpg 图片(delphi)
- png图片文件的数据结构以及转换为bmp位图的源代码
- 保存为BMP,Jpg,Png格式的图片
- VB彩色BMP图片转换为黑白图片
- bmp图片转换为YUV422格式
- PictureCtrol加载bmp、png图片
- framebuffer 保存png, bmp图片
- C代码生成图片:BMP、PNG和JPEG
- 将iPhone中tga格式的图片转换为其他格式(png、bmp等)的工具(Windows版本)
- 用.NET把bmp图片转换为jpg图片
- java将svg图片转换为png格式图片
- java将svg图片转换为png格式图片
- 图片类型转换,如png转换为jpg
- 将png转换为bmp格式
- bmp文件转换为png文件
- 将bmp图片批量转png
- HTML虚拟键盘带声音特效
- Kafka 设计与原理详解
- boost正则库
- 百度地图加载百度js 出现 BMap is not defined
- Android 使用RecyclerView实现快速索引
- C++ BMP图片转换为PNG图片
- Json的格式化
- 为什么全新的Open Container Initiative标准是软件行业的里程碑?
- ios 跳转AppStore的两种方法,以及遇到的坑
- MVP设计模式
- CAS客户端请求重定向次数过多导致请求失败
- td文字太多撑开了table
- 文章标题
- 分布式协调服务zookeeper02-zookeeper核心工作机制以及api代码演示