显示png图片的问题,用gdi+处理的

显示png图片的问题,用gdi+处理的

很奇怪

有些png可以显示出来,有些就不行
.GetBPP()之后都是32的

把数据读取到内存中之后
.Draw(hdc, rcBounds, imgRc);
显示出来

已经不知道是怎么回事了!


...全文
81 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶恭介叶恭介 2014-03-31
  • 打赏
  • 举报
回复
自个解决,GOOD
  • 打赏
  • 举报
回复
是我自己的问题。。 在ActiveX中显示的时候:

if (is_load_image_file_ == false)
	{
		image_.Load("c:\\test.png");
		is_load_image_file_ = true;
	}
	else
	{
	//	AfxMessageBox("xxxx");
		// 显示到页面中
		HDC hdc;
		hdc = pdc->m_hDC;
		if (!image_.IsNull())
		{
			RECT imgRc2 = { 0, 0, image_.GetWidth(), image_.GetHeight() };

			image_.Draw(hdc, rcBounds, imgRc2);
		}
	}
没调好Dest和Src,比如上面的代码时可行的; image_.Draw(hdc, 0, 0);也是可行的 image_.Draw(hdc, rcBounds, rcBounds);却是不对的,因为Src那里不能读取出来,造成NULL
  • 打赏
  • 举报
回复
引用 1 楼 cvbtvbwu 的回复:
GDI+还没试过显示不出来的。把不能显示的图片发给我看能显示不.QQ:1715257750
第一张三国杀的就是显示不出来的,第二张能显示出来。。多试了好几张也就这个qq的png能显示了。。不知道啥情况
  • 打赏
  • 举报
回复
引用 1 楼 cvbtvbwu 的回复:
GDI+还没试过显示不出来的。把不能显示的图片发给我看能显示不.QQ:1715257750
上面的 你直接另存为就行
叶恭介叶恭介 2014-03-31
  • 打赏
  • 举报
回复
GDI+还没试过显示不出来的。把不能显示的图片发给我看能显示不.QQ:1715257750

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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