使用GDI+保存BITMAP到文件
来源:互联网 发布:网络大电影如何申报 编辑:程序博客网 时间:2024/06/04 19:04
//使用GDI+保存BITMAP到文件
//CLSID encoderClsid
//GetEncoderClsid(L"image/png", &encoderClsid); //png
//GetEncoderClsid(L"image/bmp", &encoderClsid);
//GetEncoderClsid(L"image/gif", &encoderClsid);
//GetEncoderClsid(L"image/jpeg",&encoderClsid);
//GetEncoderClsid(L"image/tiff",&encoderClsid);
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;
}
BOOL SaveBitmap(HBITMAP hBitmap, LPCTSTR lpszFileName, LPCTSTR lpszFormat)
{
Bitmap bmp(hBitmap,NULL);
CLSID encoderClsid;
GetEncoderClsid(lpszFormat, &encoderClsid);
if(Status::Ok == bmp.Save(lpszFileName, encoderClsid, NULL)) {
return TRUE;
}
return FALSE;
}
//SaveBitmap(hBitmap, L"C:\\123.jpeg", L"image/jpeg");
- 使用GDI+保存BITMAP到文件
- Bitmap实现圆,保存Bitmap到文件
- Android保存Bitmap到文件
- windows gdi - 保存bitmap
- 使用Bitmap保存图片文件到指定路径
- GDI+ BitMap save 保存图像
- android 保存bitmap到指定文件
- android Bitmap保存到文件(PNG)
- 使用GDI+ 保存HDC为位图文件
- 保存Bitmap到内存流中引发“GDI+中发生一般性错误”
- GDI+将CDC中画好的图像,保存到文件中
- Bitmap保存到本地
- Bitmap保存到SD
- 总结:C# Bitmap保存的问题,eg:GDI+中发生一般性错误 .jpg 正由另一个进程使用 ,该进程无法访问文件
- C# Bitmap保存的问题,eg:GDI+中发生一般性错误 .jpg 正由另一个进程使用 ,该进程无法访问文件
- Android中把Bitmap图片保存到文件中
- GDI/GDI+(2): VC中,保存HBITMAP到bmp文件方法
- Bitmap转为文件保存
- 蒂姆-库克于2010年5月14日在奥本大学毕业典礼上发表的演讲全文
- 6.16开发者日:UC梁捷谈Web App的未来
- iptables 修改
- How to Make an HTML5 iPhone App
- 2012-06-18
- 使用GDI+保存BITMAP到文件
- android Camera 应用流程 --Camera
- linux常用命令合集(持续更新……)
- Android上蓝牙通信功能开发:BluetoothChat例程分析
- 浅谈互联网安全的问题以及解决方法
- 关于NavigationBar的返回按钮
- struts 2-001-简单struts2实例开发
- Android中使用ormlite实现持久化--HelloOrmLite
- iOS已发布应用中对异常信息捕获