업로드 된 이미지의 크기를 변경하려고합니다. 온라인에서 찾은 것으로부터, 원하는 크기로 새 이미지를 만든 다음 그래픽을 사용하여 이미지를 더 작은 이미지로 그립니다. Nikon D90 카메라의 이미지를 제외하고 업로드 된 모든 이미지에서 효과가있는 것 같습니다. 이러한 이미지를 업로드하고 크기를 조정하려고 할 때마다 아래에 표시된 줄에 OutOfMemoryException이 발생합니다. 누구든지 내가 뭘 잘못하고 있는지 말해 줄 수 있어요.OutOfMemoryException을 유발하는 DrawImage
'Create the new image as a blank bitmap
Dim resized As Image = New Bitmap(newWidth, newHeight)
'Create a new graphics object from the new image
Dim g As Graphics = Graphics.FromImage(resized)
'Resize graphics object to fit onto the resized image
g.DrawImage(originalImage, New Rectangle(0, 0, resized.Width, resized.Height)) <-- Exception
g.Dispose()
FromFile을 사용하고 있습니다. FromStream에서 같은 오류가 발생하지만 그 이유는 같다고 생각합니다. 이미지가 Paint.Net에서 열리고 Paint.Net에서 크기를 조정 한 다음 업로드하면 이미지가 잘 작동합니다. 이것은 내 최종 사용자에게는 불필요한 단계로 보입니다. BinaryReader 솔루션과 관련된 것은 무엇입니까? – BLeB
또한 예외는 DrawImage에서 FromFile이 아닌 – BLeB
에서 발생합니다. Paint.Net에서 이미지를 열고 다시 저장하기 만하면됩니다. 최종 사용자가이 작업을 수행하는 것을 원하지 않으면 앱에서해야합니다. DrawImage 문서는 그렇게 말하지 않지만 FromFile과 동일한 문제가 있다고 생각합니다. –