image - 无法在颤动中将 blob 显示为图像
问题描述
我正在尝试在颤动中显示存储为 blob 的图像。我正在使用 PHP API 来获取图像并将其作为 base64 字符串发送。构建映像时,会出现一个错误,提示正在 Failed decoding image. Data is either invalid, or it is encoded using an unsupported format.
运行 xampp 服务器。PHP API。Flutter 应用程序使用 android studio 模拟器运行
我可以使用 HTML img 标签在网页上显示图像。
Image.memory(base64Decode(imagebase64string));
我希望图像显示在屏幕上错误说
Failed decoding image. Data is either invalid, or it is encoded using an unsupported format.
解决方案
将其从 base64 解码回一个字节数组,并从以下位置使用dart.ui
:
final codec = await ui.instantiateImageCodec(data);
final frame = await codec.getNextFrame();
return frame.image;
甚至更简单,来自package:flutter/widgets.dart
:
return decodeImageFromList(data);
推荐阅读
- wordpress - 确保 CSP 有效对抗 wordpress 中的 XSS 攻击如何解决?
- vue.js - Vue-Router 命名路由回退
- javascript - 将谷歌地图放在 col div 中
- angular - 有效地将 [ngClass] 表达式应用于 td
- sql - SQL Query with WHERE NOT does not filter corretly
- topojson - Convert coordinates to shapre
- pine-script - Getting time of day of bar close
- reactjs - How to remove the opacity of the slides that are behind in react-spring-3d-carousel?
- flutter-web - how to get variable's value from custom Js and use it in Flutter web/dart
- r - trying to avoid the "no non-missing arguments to min; returning Inf" warning with if_else condition does not work