我想複製一個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