【问题标题】:Convert Image to Uint8List Flutter将图像转换为 Uint8List 颤振
【发布时间】:2022-01-18 21:55:47
【问题描述】:

如何将可变Image类型转换为Uint8List?

当 App 像这样启动时,变量从共享首选项中获取其值:

String? img = prefs.getString('image');
Image imageOfBillHead = Image.memory(base64Decode(img));

我想将imageOfBillHead 转换为List<int>

编辑:

我可以这样做将 Image 转换为 Unit8List:

SharedPreferences prefs = await SharedPreferences.getInstance();
String? _imgString = prefs.getString('image');

List<int> imageData =  Base64Decoder().convert(_imgString);

但我已经在应用启动时获得了图像并将其保存在imageOfBillHead,所以我不想从共享偏好中再次获得它。

有没有办法将imageOfBillHead 转换为Unit8List 或将imageOfBillHead 转换为String 以使用:

List&lt;int&gt; imageData = Base64Decoder().convert(_imgString);

【问题讨论】:

  • base64Decode(img) 是你的Uint8List
  • 不,您不能将Image 转回其原始状态。正如@pskink 所说,要么保留img,......要么从共享偏好中再次获取它(你为什么不想这样做?)

标签: list flutter image integer


【解决方案1】:
         Uint8List _bytesImage;

         String _imgString = 'iVBORw0KGgoAAAANSUhEUg.....';

           _bytesImage = Base64Decoder().convert(_imgString);

         Image.memory(_bytesImage)

你可以使用这个功能

【讨论】:

  • 您的代码将字符串转换为 Uint8List,有没有办法将图像直接转换为 Uint8List 或如何将图像类型转换为字符串?
  • 你不能直接将小部件转换为 unit8list 我不认为你可以这样做
猜你喜欢
  • 2021-01-19
  • 1970-01-01
  • 2021-12-01
  • 1970-01-01
  • 2019-07-23
  • 2021-08-01
  • 2021-07-30
  • 2021-08-24
  • 2020-10-02
相关资源
最近更新 更多