将SVG文件管道化到ImageMagick中

将SVG文件管道化到ImageMagick中,svg,imagemagick,imagemagick-convert,Svg,Imagemagick,Imagemagick Convert,抱歉,如果这属于服务器故障 我想知道使用SVG(xml)字符串作为标准输入的正确方法是什么 对于“convert msvg:-jpeg:-2>&1”命令(使用linux) 目前我正在保存一个临时文件作为输入, 但是在我的例子中,数据来自一个API,所以 直接指向命令的字符串显然是最有效的 我感谢大家的帮助。谢谢 这应该有效: convert - output.jpg 示例: convert logo: logo.svg cat logo.svg | convert - logo.j

抱歉,如果这属于服务器故障

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

目前我正在保存一个临时文件作为输入, 但是在我的例子中,数据来自一个API,所以 直接指向命令的字符串显然是最有效的

我感谢大家的帮助。谢谢

这应该有效:

convert  -  output.jpg
示例:

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

convert  logo:  logo.svg
cat logo.svg | convert  -  logo.jpg
  • 示例的第一行创建一个SVN文件并将其写入磁盘。这只是一个预备站,以便我们可以运行第二条线路

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

  • 第一行只是为管道中的下一个命令做准备,这样下一个命令就有了读入的内容

  • 下一个命令是
    convert

  • -
    字符是一种告诉
    convert
    读取其输入数据的方法,该数据不是从磁盘读取的,而是从stdin(标准输入)读取的

  • 因此,
    convert
    从标准文本中读取输入数据,并将其JPEG输出写入文件
    logo.jpg

  • 因此,我的第一个命令/行类似于您描述的“当前我只是保存一个临时文件以用作输入”的步骤

  • 我的第二个命令/行没有使用您的API(我没有访问权限,是吗?),但它演示了一种不同的方法“将字符串直接输入到命令”

  • 因此,最重要的教训是:
    convert
    通常从文件中读取输入,在命令行中写入文件名,您可以用
    -
    替换文件名,告诉
    convert
    它应该从stdin读取。(但您需要确保
    convert
    的标准输入中确实提供了一些它可以消化的内容…)


  • 对不起,我无法解释得比这更好……

    对不起,也许我只是个新手,但我不明白。我的实际数据字符串到哪里去了?是的,好的,这个方法现在很有意义,只是想看看它为什么会这样做,谢谢你的解释!