다른 이미지를 오버레이하려고합니다. 이 코드를 사용하면 다음을 수행 할 수 있습니다.GDI +로 이미지 오버레이
Dim gbkn As Bitmap = New Bitmap(7001, 7001, Imaging.PixelFormat.Format32bppArgb)
Dim g As Graphics = Graphics.FromImage(CType(gbkn, Image))
g.DrawImage(Image.FromFile("C:\background.png"), New Point(0, 0))
g.DrawImage(Image.FromFile("C:\firstlayer.png"), New Point(0, 0))
g.DrawImage(Image.FromFile("C:\secondlayer.png"), New Point(0, 0))
처음 두 장의 사진과 함께 작동합니다. 그 후 OutOfMemoryException이 throw됩니다. 이미지의 크기가 크다는 것을 알고 있습니다. 하지만 어쨌든 오버레이를 수행하고 어딘가에 저장할 수 없습니까?
첫 번째 오버레이 결과를 디스크에 저장하고 메모리를 확보하고 다른 레이어를 추가하더라도 여전히 예외가 발생합니다.
이 문제는 어떻게 해결해야합니까?
JosP
Spot on! 그게 정확히 문제 였어! 나는 이것을 간과했다고 믿을 수 없다. 고마워, 대단히 크리스! –