【问题标题】:Imagemagick fit svg to canvasImagemagick 适合 svg 到画布
【发布时间】:2016-05-09 19:03:19
【问题描述】:

我正在寻找 ImageMagick 命令以使我的 SVG 适合可视图像

这就是我的 SVG 现在的样子

我想像这样删除这些空白:

我正在寻找Inkspace's Resize page to drawing or selection的类似功能

【问题讨论】:

  • ImageMagick 是一个光栅图像处理器——它想要处理位图,而不是 SVG 文件。你想把你的 SVG 变成一个光栅/位图文件吗?如果是这样,请提供指向您的 SVG 文件而不是 PNG 文件的链接。
  • 那么 ImageMagic 不可能做到这一点?这是我的 svg gist.github.com/lekishvili/2104bf6b8104335d5ba2
  • 嗯?您链接到的 SVG 没有像您显示的任何多余的蓝线。您可以使用 ImageMagick 修剪任何周围的空闲空白区域,尽管使用 convert image.svg -trim result.png 如果您的意思是这样的话?
  • 它没有蓝线,那条线表明我有上下空格。我不想将其转换为 png,尝试使用此命令转换 14.svg -trim -repage 1.svg 它返回 svg 但里面是 base64 而不是路径请检查此要点gist.github.com/lekishvili/bfffdb950477e63259e2
  • 我可能是错的,但我不相信 ImageMagick 可以像你希望的那样创建矢量文件。

标签: shell image-processing command-line imagemagick image-manipulation


【解决方案1】:

我不相信 ImageMagick 能够为您提供矢量结果 - 它在内部将所有内容转换为位图,因为它本质上是一个光栅图像处理器。

但是,它可以告诉您图像的几何形状以及作为最小封闭框的“修剪框” - 也许您可以以某种方式使用它来“rebase”矢量图像的坐标或视口。

所以,如果你运行这个:

convert image.svg -format "%g %@" info:
100x100+0+0 93x63+4+19

它告诉您您的图像为 100x100,“裁切框”为 93x63 像素,从坐标 [4,19] 开始。我会为你画出来:

convert -stroke red -fill none image.svg -draw "rectangle 4,19 97,82" result.jpg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-17
    • 2011-08-10
    • 1970-01-01
    • 1970-01-01
    • 2021-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多