我正在尝试以这种方式制作“googlemaps 效果”:我有一张巨大的图片,所以我从中剪出了一张相当大的图片(2000x2000)。让我们称之为cachedImage。现在我希望能够在图片框中拖动和移动这张图片。我通过更改 cachedImage 中的左上点 (TLPoint) 的位置,然后使用给定的 TLPoint 将矩形区域缓存到图片框区域中来实现。因此,每次图片移动时,我都会调用 DrawSelection() 方法,并在参数中使用 TopLeft Point 的新位置。然后程序由于大内存占用而崩溃(第 282 行的 clone() 函数崩溃)。你能帮我解决这个问题吗?
该文件的代码在这里https://github.com/novellizator/path-planner/blob/master/TomyMaps/TomyMaps/Map.cs
您能否帮助如何使其更有效地记忆?我应该用什么替换 Bitmap.clone() 函数?