GDI+中的各种描画方法虽然很好用,但如果想获得一个Graphics中已经画好的内容却不那么容易了。做了一些尝试后,我用以下方法解决了这个问题。 首先,获得源Graphics的HDC,这个通过GetHDC()就能得到。 获得目标DC的CBitmap对象。这个通过CDC的GetCurrentBitmap()就能得到。 建立一个Bitmap对象,注意是GDI+的Bitmap对象。通过Bitmap( HBITMAP, HPALETTE)这个构造函数建立,后面的调色板直接给一个NULL就可以了。前面的HBITMAP也可以直接将CBitmap对象赋进去,这里要注意到是,不是Cbitmap*而是CBitmap。 Bitmap BitmapTemp = new Bitmap(TempBmp,NULL); BitmapTemp->Clone( 0, 0, /*图片宽*/, /*图片高*/, PixelFormat32bppARGB); |
C++/MFC/GDI+(七)——获取Graphics中的图像数据
最新推荐文章于 2020-05-06 23:24:38 发布
TAG:
GDIPlus