微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将文件转换回资产

如何解决如何将文件转换回资产

我正在pub.dev上使用多文件选择器程序包,该链接https://pub.dev/packages/multi_image_picker下方,并与Yalantis的图像裁剪程序包一起使用 https://pub.dev/packages/image_cropper 让我的用户选择多张图片,然后随意裁剪。

我正在使用此代码将我的资产转换为文件,然后将其输入到裁纸机中。而且有效。

final temp = await Directory.systemTemp.createTemp();
final data = await finalList[index].getByteData();
File failo = await File('${temp.path}/img').writeAsBytes(
    data.buffer.asUint8List(data.offsetInBytes,data.lengthInBytes));

print("The path is ${temp.path}");
File croppedFailo = await ImageCropper.cropImage(
  sourcePath: failo.path,androidUiSettings: AndroidUiSettings(toolbarTitle: "My App"),);

棘手的一点是将其转换回资产,以便我可以用新的裁剪后的资产替换旧的uncropped资产。我仔细阅读了该程序包的Asset文档,并尝试了该操作我的应用崩溃了

 Asset croppedPic = new Asset(
  croppedFailo.path,DateTime.Now().millisecondsSinceEpoch.toString(),300,);

finalList.replaceRange(index,index + 1,[croppedPic]);

编辑:当我说“资产”时,我指的不是我手动添加到应用程序中asset / images文件夹中的图像。多图像选择器插件具有一个称为资产的文件类型,在其中它可以返回图像。这就是我要将文件转换回的类型。

解决方法

没关系。我认为这样做太不必要了。因此,我只是重新格式化了我的整个代码,以将图像作为文件而不是资产来处理。而且,它实际上使我的生活变得简单得多,因为与资产相比,coz文件为您提供了更多的功能和更少的问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。