我想复制一个CImage
,这样我就可以对它的像素进行一些操作。我试过这个source
是一个指向加载的CImage对象的指针。如何复制CImage对象?
CImage* dest = new CImage(*source);
然而,这似乎并没有工作,我相信source
和dest
都指向相同的内存。
我该如何创建一个与之前的CImage完全分离的新副本?
我想复制一个CImage
,这样我就可以对它的像素进行一些操作。我试过这个source
是一个指向加载的CImage对象的指针。如何复制CImage对象?
CImage* dest = new CImage(*source);
然而,这似乎并没有工作,我相信source
和dest
都指向相同的内存。
我该如何创建一个与之前的CImage完全分离的新副本?
如果这是关于MFC/ATL CImage的问题,那么您可以创建新实例并使用Create将其初始化为原始CImage的大小。然后使用BitBlt复制内容。
是的,它是ATL,你能解释如何使用'BitBlt'。 – 2012-03-05 18:03:26
下面是一个示例srcImg.BitBlt(dstImg.GetDC(),0,0),dstImg应该与srcImg兼容且具有相同的大小。 – marcinj 2012-03-05 18:26:09
对于哪个库? – 2012-03-05 17:52:43
@ phresnel,对不起,这是ATL。 – 2012-03-05 18:04:31