我有下面的Java代码模糊的面孔图像 - 变量convert
设置为/usr/bin/mogrify
从Java不工作,直接调用ImageMagick的调用工作
//String []cmd = {convert, "-region", f.w+"x"+f.h+"+"+x+"+"+y, "-blur 0.0x10.0", path};
String cmd = convert + " -region " + f.w+"x"+f.h+"+"+x+"+"+y + " -blur 0.0x10.0 " + "\"" + path + "\"";
System.out.println(cmd);
// System.out.println(strJoin(cmd, " "));
Process p = Runtime.getRuntime().exec(cmd);
BufferedReader in = new BufferedReader(
new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
p.waitFor();
但没有任何反应上的图像。
该方案还输出命令行会调用,例如:
/usr/bin/mogrify -region 37x44+1759+881 -blur 0.0x10.0 "/home/self/.wine/drive_c/windows/profiles/self/My Pictures/test/pic00164.jpg"
如果我手动调用这一行,一切工作正常。
正如您从注释中看到的,我也尝试提供cmd
为一个数组,应自动逃避我的道路空间 - 同样的效果:无。
一切正常。用'p.getErrorStream尝试()',而不是'p.getInputStream()'获取错误的描述。 – 2014-12-07 19:03:49