如何解决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 举报,一经查实,本站将立刻删除。