MFC显示图像问题
我在界面中显示图像,现在我需要只显示图像的中间部分,或者自定义显示范围。请问大神该怎么去处理呢?...
我在界面中显示图像,现在我需要只显示图像的中间部分,或者自定义显示范围。请问大神该怎么去处理呢?
展开
3个回答
展开全部
stretchblt 用这个
strectchblt(HDC hdc,int 目标X,int目标y,int 目标款,int 目标高,HDC 图像DC ,int 源图像X,int 源图像y,int 源图像宽,int 源图像高,DWORD 位标志)
如果图像失真 使用 setstretchmode 更改模式
strectchblt(HDC hdc,int 目标X,int目标y,int 目标款,int 目标高,HDC 图像DC ,int 源图像X,int 源图像y,int 源图像宽,int 源图像高,DWORD 位标志)
如果图像失真 使用 setstretchmode 更改模式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最耗资源的做法,如楼上所说,SetPixel,如果不使用双缓冲DC会体验一下绘图的动画效果;
最省事儿的做法,怎么读取出来的,就按原位置写回去,这个应该是改动代码最少并且效果还好的做法。
最合理的办法,不要自定义数组,BMP指针有很多支持的操作模式,虽然不如数组循环省事儿,但一个RGB结构就可以满足对BMP内存句柄(或类)的像素点操作,全部处理直接在BMP指针上进行,处理后就可以直接显示了。
最省事儿的做法,怎么读取出来的,就按原位置写回去,这个应该是改动代码最少并且效果还好的做法。
最合理的办法,不要自定义数组,BMP指针有很多支持的操作模式,虽然不如数组循环省事儿,但一个RGB结构就可以满足对BMP内存句柄(或类)的像素点操作,全部处理直接在BMP指针上进行,处理后就可以直接显示了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询