我已经看到了使用ImageElement加载图像的答案。这仅适用于浏览器端,我想在服务器上进行一些处理。
有没有办法在服务器端飞镖中从 PNG 加载和读取 RGBA 值?如果没有,是否计划有任何服务器端图像处理库?
无论如何运行Dartium“无头”,所以我可以使用canvas api来做我想做的事?
我已经看到了使用ImageElement加载图像的答案。这仅适用于浏览器端,我想在服务器上进行一些处理。
有没有办法在服务器端飞镖中从 PNG 加载和读取 RGBA 值?如果没有,是否计划有任何服务器端图像处理库?
无论如何运行Dartium“无头”,所以我可以使用canvas api来做我想做的事?
有一个可以读写PNG图像服务器端的dart库, http: //pub.dartlang.org/packages/image
该库可以读取和写入 PNG 和 JPG 图像,并提供许多图像处理命令。
例如,要读取 PNG、调整大小并使用此库将其保存到磁盘:
import 'dart:io' as Io;
import 'package:image/image.dart';
void main() {
// Read a PNG image from file.
Image image = readPng(new Io.File('foo.png').readAsBytesSync());
// Resize the image to a 120x? thumbnail (maintaining the aspect ratio).
Image thumbnail = copyResize(image, 120);
// Save the thumbnail to disk as a PNG.
new Io.File('foo-thumbnail.png').writeAsBytesSync(writePng(thumbnail));
}
目前没有图书馆。
我一直在使用ImageMagick。你可以Process.run()
用来运行它。这是一个例子:
Process.run('/usr/local/bin/convert', ['file', '-resize', '100x100']);