【发布时间】:2017-04-21 13:17:16
【问题描述】:
在问这个问题之前,我搜索了很多,但找不到适合我的解决方案。
在Xamarin.Forms 中,我有一个byte[] 数组,我想将该byte[] 数组转换为Image。我怎样才能做到这一点,这是我尝试过的:
在前端(XAML)中:
<StackLayout BackgroundColor="Olive" x:Name="imagePanel">
<Image x:Name="PdfImage" Aspect="AspectFill" IsVisible="true"/>
</StackLayout>
在代码背后(C#)中:
byte[] imageAsBytes = Constant.jsonPDF;
var stream1 = new MemoryStream(imageAsBytes);
PdfImage.Source = ImageSource.FromStream(() => new MemoryStream(imageAsBytes));
imagePanel.Children.Add(PdfImage);
但我的问题是图像不显示。
谁能告诉我我做错了什么。任何帮助将不胜感激。
【问题讨论】:
-
byte[] 是 jpg 还是 png?
-
其实我不知道...
Constant.jsonPdf包含值并且来自服务器。当我调试时,我只能看到byte[694753]。 -
您应该验证 - 将其写入磁盘,然后使用图像查看器查看,或者使用 curl 或浏览器将其下载到您的桌面。如果它不是有效的图像类型,它将不会显示在图像控件中
-
好的,谢谢...我使用
DependencyService将字节数组保存到图库,但我只得到一个空白屏幕;( -
这听起来像是一张糟糕的图片,或者是某种不受支持的格式
标签: arrays image xamarin.forms image-conversion