コード例 #1
0
ファイル: ImageSource.wasm.cs プロジェクト: Robert-Louis/Uno
        private protected async Task <ImageData> OpenFromStream(IRandomAccessStreamWithContentType stream, Action <ulong, ulong?>?progress, CancellationToken ct)
        {
            try
            {
                var bytes = await stream.ReadBytesAsync(ct, progressCallback : progress);

                var encodedBytes = Convert.ToBase64String(bytes);

                ReportImageLoaded();

                return(new ImageData
                {
                    Kind = ImageDataKind.DataUri,
                    Value = "data:" + stream.ContentType + ";base64," + encodedBytes
                });
            }
            catch (Exception ex)
            {
                ReportImageFailed(ex.Message);

                return(new ImageData {
                    Kind = ImageDataKind.Error, Error = ex
                });
            }
        }