我正在开发一个 xamarin 应用程序。在这个应用程序中,我需要画一张手机拍摄的照片并在上面画画。对于图片的绘制和其他一切,我使用 SkiaSharp。
我画图时遇到问题:当我画它时,旋转不好,所以我旋转了画布并画了图。现在我不知道如何计算我的翻译和我的比例,我必须将图片应用到画布上以获取所有画布。
这是我画我的照片的方式:
var bitmap = SKBitmap.Decode(_mediaHelper.OpenStream(ImageUri));
int rotation = _mediaHelper.GetPhotoRotation(ImageUri);
canvas.Save();
canvas.RotateDegrees(rotation, bitmap.Width / 2f, bitmap.Height / 2f);
canvas.DrawBitmap(bitmap, 0, 0);
canvas.Restore();
_mediaHelper.OpenStream(ImageUri) 是 android 应用程序提供的一项服务,用于检索带有 URI 的图片流。