我正在尝试创建一个图像滤镜,我想知道的是,是否可以对图像应用滤色器,然后保存应用了滤色器的图像?如果是那么如何。现在我已经能够使用以下代码将滤色器应用于图像。但我们需要的是保存该图像并让它与滤色器一起显示。
Container(
child: Stack(
children: <Widget>[
ColorFiltered(
colorFilter: ColorFilter.mode(Colors.black87, BlendMode.color),
child: Image(
image: FileImage(
this.images[index]
),
),
),
)
]
)
);
需要的是像这样的某种函数,它将原始图像转换为应用了滤色器的图像。
void transformImage(String path) {
// do something here ...
}
最佳答案
使用 Image小部件,您可以进行各种操作。
import 'dart:io';
import 'package:image/image.dart';
void main() {
// Create an image
Image image = Image(320, 240); // You can also load an image here
// Fill it with a solid color (blue) OR add color filter
fill(image, getColor(0, 0, 255));
// Draw some text using 24pt arial font
drawString(image, arial_24, 0, 0, 'Hello World');
// Draw a line
drawLine(image, 0, 0, 320, 240, getColor(255, 0, 0), thickness: 3);
// Blur the image
gaussianBlur(image, 10);
// Save the image to disk as a PNG
File('test.png').writeAsBytesSync(encodePng(image));
}
关于android - 如何在 Flutter 中创建过滤图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63305968/