如何将 uint8list 以 png 格式保存到图库

how to save uint8list to gallery as png

我正在开发一个项目,该项目捕获小部件的屏幕截图并将其保存在图库中。 我的问题是 flutter 中保存到图库的包很少,我几乎尝试了所有包! 他们将图像保存为 jpg,这会在我的小部件周围添加额外的黑条,我不希望它们出现在那里。 是否有任何软件包可以将图像以 PNG 格式保存到图库?

您可以使用 Image_gallery_saver 插件将图片保存到画廊。image_gallery_saver .对于黑条,您必须确保屏幕截图已附加到小部件,您想要的图像。

await ImageGallerySaver.saveImage(uint8list blob);

经过 2 天的努力,我找到了解决方案。 您应该将文件另存为 PNG 到设备路径,然后使用 image_gallery_saver 打包保存为文件

 File('$dir/file_name${DateTime.now()}.png').writeAsBytes(pngBytes!);
 final result = await ImageGallerySaver.saveFile(imagePath);