SKBitmap.Decode (imageStream) возвращает ноль - PullRequest
0 голосов
/ 08 июля 2019

Я пытаюсь использовать skiasharp для редактирования изображения, которое у меня есть в виде потока, но когда я пытаюсь превратить его в SKBitmap, полученная переменная всегда равна none.Я использую Xam.Plugin.Media, чтобы получить изображение.

var photo = await Plugin.Media.CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions() { SaveToAlbum = false });

if (photo != null)
{
    var imageStream = photo.GetStream();
    SKBitmap bitmap = SKBitmap.Decode(imageStream);
    using (SKPaint textPaint = new SKPaint { TextSize = 48 })
    using (SKCanvas canvas = new SKCanvas(bitmap))
    {
        canvas.DrawText("test", 0, 0, textPaint);
    }

    SKImage image = SKImage.FromBitmap(bitmap);
    SKData encoded = image.Encode();
    Stream stream = encoded.AsStream();

    PhotoImage.Source = ImageSource.FromStream(() => { return stream; });
}
...