我正在开发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检索图片流。