Xamarin Forms - 不使用Native(iOS / Android)代码将图像转换为Bitmap

时间:2017-05-25 06:54:11

标签: sqlite xamarin bitmap xamarin.forms

是否有办法可以将Xamarin Forms图像转换为位图格式(用于存储在SQLite数据库中),而无需为iOS和Android单独编写两次代码?

2 个答案:

答案 0 :(得分:1)

https://forums.xamarin.com/discussion/27743/image-to-base64-conversion这将帮助您将Image转换为base64字符串。

从base64字符串中,您可以使用以下代码从base64字符串中获取Bitmap

Base64到位图:

public Bitmap Base64ToBitmap(String base64String)
{
    byte[] imageAsBytes = Base64.Decode(base64String, Base64Flags.Default);
    return BitmapFactory.DecodeByteArray(imageAsBytes, 0, imageAsBytes.Length);
}

答案 1 :(得分:1)

有几个库可用于图像加载和转换。

  • 您可以使用Splat,一个简单的轻量级库,用于跨平台图像加载和转换。
  • 您可以使用DevKit.Xamarin.ImageKit它为每个平台实施的轻量级库 与Android类似,它将返回Bitmap,对于iOS,它将从UIImage返回byte[],对于UWP,它将从WriteableBitmap返回byte[] < / p>

  • 或者,像Fast & Furious Image Loading这样更复杂的库它支持内置的缓存和转换。