Bimmap 成像用bitblt 缩放问题
2016-11-08 13:32
134 查看
BitBlt不能变尺寸,但是StrectchBlt可以变尺寸,在使用StrectchBlt时要注意,首先要设置一下SetStretchBltMode,通常设成HALFTONE,这样缩放时就不会失真。
SetStretchBltMode 模式可以参考:
http://blog.csdn.net/hgy413/article/details/6785513
推荐HALFTONE, 但可能会消耗资源一点.
使用示例.
SetStretchBltMode 模式可以参考:
http://blog.csdn.net/hgy413/article/details/6785513
推荐HALFTONE, 但可能会消耗资源一点.
1 void CAnalysisVideoPlayerDlg::DrawImage( HBITMAP hbitmap, int x, int y, CDC *pDC, int nSrcW, int nSrcH) 2 { 3 HBITMAP OldBitmap; 4 CDC MemDC; 5 MemDC.CreateCompatibleDC(pDC); 6 OldBitmap=(HBITMAP)MemDC.SelectObject(hbitmap); 7 CRect rect; 8 GetClientRect(&rect); 9 if (pDC){ 10 pDC->SetStretchBltMode(HALFTONE); 11 //pDC->SetStretchBltMode(COLORONCOLOR); 12 pDC->StretchBlt(x, y, rect.Width(), rect.Height(), &MemDC, 0, 0, nSrcW, nSrcH, SRCCOPY); 13 //pDC->BitBlt(x,y,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY); 14 } else { 15 ASSERT(0); 16 } 17 MemDC.SelectObject(OldBitmap); 18 ReleaseDC(&MemDC); 19 }
使用示例.
相关文章推荐
- andori-mapabc:mapview无法显示、不能拖动、缩放失效等问题
- TBitmap.Canvas 上绘制的内容被自动缩放的问题
- 游戏界面缩放后屏幕抖动的问题
- 如何去掉鼠标滚轮缩放图片和解决签名图片变形问题。
- request.getParameterMap()返回Map的锁定问题
- Map控件的visible问题
- 关于Map的排序问题
- VC下关于map容器类引起的问题?
- 数据库中非空字段。在MAP时应该注意的问题。
- DM642使用ccs3.1时GEL的问题:GEL: Error calling OnPreFileLoaded(): memory map prevented write to target memory at 0x01800054
- 当缩放遇到Texture2D drawAtPoint 函数的一个问题.
- hibernate3.0通过eclipse插件自动生成pojo和map报Table 'table_name' doesn't exist找不到问题
- SetBitmapBits问题
- SharpMap AjaxMapControl 中 Zoomin/Zoomout 操作时冻结问题
- 解决Nagios安装好后statusmap.cgi找不到的问题
- 关于cookieless="true"与website.map冲突的一个问题!
- ArcGIS9、MapObject2.2和ArcExplorer2.0连接ArcSDE9.0问题
- SharpMap AjaxMapControl 中 Zoomin/Zoomout 操作时冻结问题
- 微软STL,hash_map 的效率问题
- PIM MAP问题调查心得