抓取图标保存后ico失真

coffee_machine 2009-07-02 10:58:09
我从任意格式的文件中,获取这个文件的图标的HICON,

if(HICON != NULL)
{

//利用HICON句柄导出.ico文件进行保存
//但每次保存的.ico文件,严重失真

}

哪位可以给我说一个思路或方法的,先谢过了
...全文
77 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
coffee_machine 2009-07-07
  • 打赏
  • 举报
回复
经过研究,把数据提出来,自己写//位图信息+调色板+彩色位图位值+掩码位图位值 构成*.ico文件,就不会失真
neohope 2009-07-03
  • 打赏
  • 举报
回复
不介意的话,exescope
dqdx_zch 2009-07-03
  • 打赏
  • 举报
回复
应该是调色板的事
我前几天也遇到了,
不过我的图片是8位的,我存储的时候也用8位的调色板,奇怪的是颜色会失真
于是我存储的时候,把调色板改成24位的就没问题了

ps我存储图像的时候是在内存dc上存储的
编程-鸟人-_-- 2009-07-03
  • 打赏
  • 举报
回复
正是2楼所说。。。。你用来存储icon的调色板不匹配,使颜色丢失。。。
coffee_machine 2009-07-03
  • 打赏
  • 举报
回复
希望大家帮助一下
coffee_machine 2009-07-03
  • 打赏
  • 举报
回复
我先改改,不对再请教,dqdx_zch ,你能给我看一下,你存储的方法吗,谢谢
coolyama 2009-07-02
  • 打赏
  • 举报
回复
不会,帮顶,希望楼下的能帮到你~
iblold 2009-07-02
  • 打赏
  • 举报
回复
具体没用过,但是图片失真应该是调色板没有取对问题,比如256色的ico,你给了一个16色的调色板,找一下相关代码吧,

64,649

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧