将SVG文件管道化为ImageMagick

时间:2012-08-13 23:42:52

标签: svg imagemagick imagemagick-convert

很抱歉,如果这属于serverfault

我想知道使用SVG(xml)字符串作为标准输入的正确方法是什么 对于"convert msvg:- jpeg:- 2>&1"命令(使用linux)

目前我只是保存一个临时文件用作输入, 但数据源自我的情况下的API,所以喂养 直接指向命令的字符串显然效率最高。

我感谢大家的帮助。谢谢!

1 个答案:

答案 0 :(得分:2)

这应该有效:

convert  -  output.jpg

示例:

convert  logo:  logo.svg
cat logo.svg | convert  -  logo.jpg

<强>解释

  1. 示例的第一行创建一个SVN文件并将其写入磁盘。这只是一个预备性停止,以便我们可以运行第二行。

  2. 第二行是两个命令的管道cat将文件的字节流式传输到 stdout (标准输出)。

  3. 第一行仅用作准备管道中的下一个命令,以便下一个命令可以读入。

  4. 下一个命令是convert

  5. -字符是告诉convert不是从磁盘读取输入数据,而是从 stdin (标准输入)读取输入数据的方法。

  6. 因此convert stdin 中读取其输入数据,并将其JPEG输出写入文件logo.jpg

  7. 所以我的第一个命令/行与你描述为的步骤类似,目前我只是保存一个临时文件用作输入'

  8. 我的第二个命令/行没有使用你的API(我无法访问它,是吗?),但它演示了一种不同的方法来'将字符串直接输入命令'

  9. 所以最重要的一课是这样的:凡convert通常会读取文件中的输入以及您在命令行上写文件名的位置,您可以用-替换文件名告诉convert它应该从 stdin 中读取。 (但是你需要确保在convert的标准输入上提供了它可以消化的实际内容......)

  10. 对不起,我无法解释比这更好......