首页 > 解决方案 > Flutter 如何将 Image 数据类型转换为 File 数据类型?

问题描述

好的,这将是我在这个社区的第一个问题。

我正在开发一个创建 QrImage (qr_flutter) 并将其转换为 Image 的项目。

到目前为止一切正常,我可以从 Qr 数据类型中获取图像。但我需要将此图片上传到 Firebase 存储。

为了上传这个Image,我需要将它转换为File因为方法.putFile()需要File数据类型作为参数。

基本上我想做的事情是这样的:

Image image = QRtoImage();
File imageFile = ConvertImageToFile(image);
storage.upload(imageFile);

所以我需要一个函数ConvertImageToFile(Image image)

.putFile() 的用法也如下所示:

UploadTask uploadTask = storageRef.child("xxx.jpg").putFile(imageFile);

我该如何进行这种转换?非常感谢。

标签: firebaseflutter

解决方案


图像包可能是您正在寻找的。它可以让你做到这一点:

// Create an image
Image image = Image(320, 240);

// Save the image to disk as a PNG
File('test.png').writeAsBytesSync(encodePng(image));

推荐阅读