怎么将JPG图片转化为BMP格式
我准备在JPG图片上打字上去,但是到处看到的都是通过BMP打上去的,现在把后面的部分实现了,能够用BMP打字上去并保存为JPG,但是差前面的把JPG转换为BMP。试过把文件的后缀给它直接改了,但是那样改出来的BMP不行。各位大哥指点一下啊,不胜感激
[解决办法]
BMP到JPG有个压缩的算法吧,不太懂
[解决办法]
BMP JPG 互转 GDI+
int GetEncoderClsid(const WCHAR* format, CLSID* pClsid)
{
UINT num= 0;
UINT size= 0;
ImageCodecInfo* pImageCodecInfo= NULL;
GetImageEncodersSize(&num, &size);
if(size== 0)
{
return -1;
}
pImageCodecInfo= (ImageCodecInfo*)(malloc(size));
if(pImageCodecInfo== NULL)
{
return -1;
}
GetImageEncoders(num, size, pImageCodecInfo);
for(UINT j=0; j< num; ++j)
{
if(wcscmp(pImageCodecInfo[j].MimeType, format)== 0)
{
*pClsid= pImageCodecInfo[j].Clsid;
free(pImageCodecInfo);
return j;
}
}
free(pImageCodecInfo);
return -1;
}
CLSID encoderClsid
GetEncoderClsid(L"image/png", &encoderClsid);
GetEncoderClsid(L"image/bmp", &encoderClsid);
GetEncoderClsid(L"image/gif", &encoderClsid);
GetEncoderClsid(L"image/jpeg", &encoderClsid);
GetEncoderClsid(L"image/tiff", &encoderClsid);
// =======================保存bmp图片============================
CLSID encoderClsid;
GetEncoderClsid(L"image/bmp", &encoderClsid); // bmp
bmp->Save(L"c:\\dst.bmp", &encoderClsid);