使用ImageMagick的文件名引用时“无法打开图像”错误

时间:2011-01-09 01:52:46

标签: reference imagemagick filenames

我正在使用ImageMagick从命令行执行一些图像处理,并希望对foo.txt中指定的文件列表进行操作。从这里的说明:http://www.imagemagick.org/script/command-line-processing.php我看到我可以使用前缀为@的文件中的文件名引用。当我运行类似的东西时:

  

montage @ foo.txt output.jpg

只要foo.txt在当前目录中,

一切都按预期工作。但是,当我尝试通过运行:

访问另一个目录中的bar.txt时
  

montage /some_directory/@bar.txt   output2.jpg

我明白了:

  蒙太奇:无法打开图片   /some_directory/@bar.txt:没有这样的文件   或目录@ blob.c / OpenBlob / 2480。

我认为问题是我的语法,但我不知道该怎么改变它。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

相当旧的条目,但似乎相对明显的是你需要在完整路径之前放置@:

montage @/some_directory/bar.txt output2.jpg

答案 1 :(得分:1)

截至ImageMagick 6.5.4-7 2014-02-10,@ syntax不支持路径。 @文件必须位于当前目录中,并且仅按名称标识。

答案 2 :(得分:0)

我没有尝试过指导IM从文件中提取文件列表,但我确实在命令行中指定了多个文件,如下所示:

gm -sOutputFile=dest.ext -f file1.ppm file2.ppm file3.ppm

你能将该文件的内容拉入变量,然后让shell扩展该变量吗?