image - 在 Flutter Web 中显示所选图像

标签 image file show flutter-web

由于 flutter web 处于技术预览阶段,因此所有插件都无法正常工作。

我的任务是显示我们选择的图像。 我有以下选择器

_startFilePicker() async {
InputElement uploadInput = FileUploadInputElement();
uploadInput.multiple = true;
uploadInput.click();

uploadInput.onChange.listen((e) {
  // read file content as dataURL
  final files = uploadInput.files;
  if (files.length == 1) {
    final file = files[0];
    final reader = FileReader();

    reader.onLoadEnd.listen((e) {
      _handleResult(reader.result);
          });
          reader.readAsDataUrl(file);
        }
      });
      }

        void _handleResult(Object result) {
          setState(() {
            images.add(result);
          });
        }

result 给我输出 data:image/jpeg;base64,/9j/4AAQSkZJRg....

如何在图像小部件中显示此输出?

我尝试使用 Image.memory(base64Decode(file))。但是文件无法解码。我怀疑是因为它不是原始的 base64。

如何将此输出转换为可见图像?以及如何处理多张图片?

谢谢

最佳答案

在你的base64字符串中,排除“data:image/jpeg;base64”,只保留“/9j/4AAQSkZJRg...”

将您的 base64 字符串粘贴到在线图像转换器 https://codebeautify.org/base64-to-image-converter ,以确保您的 base64 字符串正确

_base64 = "/9j/4AAQSkZJRg...";

解码

Uint8List bytes = base64Decode(_base64);

并显示图像

Image.memory(bytes);

你也可以引用这个How to convert BASE64 string into Image with Flutter?

关于image - 在 Flutter Web 中显示所选图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57798948/

相关文章:

android - 使用 LoopJ Android syncHttp 从 https 下载图片资源

javascript - 显示和隐藏 div onclick 按钮

c - 将 execl 与多个子进程一起使用

windows - 以编程方式删除 .git .idx .pack 文件

java - 将数据保存到托管 .dat 文件

php - 显示复选框数据 mysql

jquery - p 元素在我隐藏后不会显示

r - 在 R 中,如何将 data.tree 图保存到文件中?

CSS:如何确保图像完全填满容器?

javascript - Javascript 中的数据到图像