在Flutter / Dart中,我该如何执行以下3个步骤:
>从磁盘读取图像,
>阅读其原始尺寸(宽度和高度),
>调整大小.
注意:我必须能够使用常规的Flutter Image小部件显示最终结果.
澄清:我不想保存图像,但我确实想在内存中实际调整大小.
解决方法
您可以使用
image.file构造函数从磁盘读取图像.
有关更多功能,您可以使用Image library
A Dart library providing the ability to load,save and manipulate
images in a variety of different file formats.
来自文档examples的样本
Load a jpeg,resize it,and save it as a png
import 'dart:io' as Io; import 'package:image/image.dart'; void main() { // Read a jpeg image from file. Image image = decodeImage(new Io.File('test.jpg').readAsBytesSync()); // Resize the image to a 120x? thumbnail (maintaining the aspect ratio). Image thumbnail = copyResize(image,120); // Save the thumbnail as a PNG. new Io.File('out/thumbnail-test.png') ..writeAsBytesSync(encodePng(thumbnail)); }