- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(GIF转换成BMP程序
BCB使用GDI+实现分解gif每帧保存为bmp上一篇 / 下一篇?2009-09-27 19:51:18 / 个人分类:随笔 查看( 431 ) / 评论( 0 ) / 评分( 0 / 0 ) 由于工作需要用到GDI+..就当是做个备份...然而 GDI+ 和 BCB的编译环境兼容性不太好,冲突一大堆....其实这个demo代码不难...不过第一次用GDI+..实在有很多问题...无奈之下找来了GDI+的SDK....果然牛叉的文档...崇拜ing...GDI+实现分解gif每帧保存为bmp图...别忘了加上头文件...还是怀念VC年代,在下面的代码基础上,可以得到延迟时间,播放总长,可以根据自己的需要自行更改bool GetEncoderClsid(const WideString format, CLSID* Clsid){ UINT? num = 0; UINT? size = 0; ImageCodecInfo* imageCodecInfo = NULL; GetImageEncodersSize(num, size); if (size == 0) return false; imageCodecInfo = (ImageCodecInfo*)new char[size]; if (!imageCodecInfo) return false; GetImageEncoders(num, size, imageCodecInfo); UINT i = 0; for (; i num wcscmp(imageCodecInfo[i].MimeType, format.c_bstr()) != 0; i ++); if (i num) *Clsid = imageCodecInfo[i].Clsid; delete[] (char*)imageCodecInfo; return i num;}void __fastcall TForm2::Button1Click(TObject *Sender){ ULONG gdiplusToken; Gdiplus::GdiplusStartupInput gdiplusStartupInput; GdiplusStartup(gdiplusToken, gdiplusStartupInput, NULL);//初始化GDI+ Image *image = new Image(LC:\\1.gif); GUID guid; image-GetFrameDimensionsList(guid, 1); int count = image-GetFrameCount(guid); CLSID Clsid; GetEncoderClsid(Limage/bmp, Clsid); WideString fileName; for (int i = 0; i count; i ++) { image-SelectActiveFrame(guid, i); fileName = C:\\ + IntToStr(i) + .bmp; image-Save(fileName.c_bstr(), Clsid); } delete image; GdiplusShutdown(gdiplusToken);//关闭GDI+}以上代码在BCB6下通过调试..继续啃GDI+的SDK..../yuzl32/article/details/5389919GDI+实现图片格式转换(bmp、jpeg、gif、tiff、png) 分类: /yuzl32/article/category/654410WINDOWS/R3/R0 2010-03-17 16:57 1670人阅读 /yuzl32/article/details/5389919 \l comments评论(4) javascript:void(0); \o 收藏收藏 /yuzl32/article/details/5389919 \l report \o 举报举报 引言:通过GDI+我们可以很方便的对bmp、jpeg、gif、tiff、png格式的图片进行转换。步骤:1)??? 通过GdiplusStartup初始化GDI+,以便后续的GDI+函数可以成功调用。2)??? 通过GetImageEncodersSize获取GDI+支持的图像格式编码器种类数numEncoders以及ImageCodecInfo数组的存放大小size。3)??? 通过malloc为ImageCodecInfo数组分配足额空间。4)??? 通过GetImageDecoders获取所有的图像编码器信息。5)??? 查看ImageCodecInfo.MimeType,查找符
您可能关注的文档
最近下载
- 基于springboot的校园二手交易小程序.docx VIP
- 小升初英语一般将来时专项训练.pdf VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf VIP
- 《非麻醉医师实施口腔诊疗适度镇静镇痛专家共识》解读.pdf VIP
- 2023水电工程建设征地移民安置技术通则.docx VIP
- YY 0017-2016骨接合植入物 金属接骨板.pdf
- 银行业金融机构高级管理人员任职资格考试题库及答案——2024年整理.pdf
- 12第二编 第三章 司马迁与史记.pptx VIP
- 标准图集-23S519-小型排水构筑物.pdf VIP
- 16第二编 第七章 汉代文人诗.pptx VIP
文档评论(0)