Skiasharp旋转图像内存不足

问题描述

我正在使用Xamarin Forms创建一个具有多种工具的移动应用程序。想想汽车仪表板。我每100毫秒从另一个来源更新一次仪器。以指南针为例,当您旋转我的指南针时,仪器会转到正确的位置。因此,我使用以下代码旋转了指南针:

        public static SKBitmap Rotate(SKBitmap bitmap,double angle)
    {
        var rotated = new SKBitmap(bitmap.Height,bitmap.Width);

        using (var surface = new SKCanvas(rotated))
        {
            surface.Rotatedegrees((float)angle,rotated.Width / 2,rotated.Height / 2);
            surface.DrawBitmap(bitmap,0);
        }

        return rotated;
    }

问题在于,随着时间的流逝,该应用程序将耗尽内存。当我添加更多旋转工具(如速度计)时,它崩溃的速度更快。

我验证了没有此调用,应用程序可以正常运行。似乎必须有一种更好的方法来旋转位图,而不是创建一个新的画布并对其进行绘制,以仅在真实画布上再次进行绘制。这里有什么想法或方向吗?谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)