在 Mac OS X 上将 SVG 转换为 PNG 的命令行应用程序

在 Mac OS X 上将 SVG 转换为 PNG 的命令行应用程序

是否有任何可以在 macOS 上运行的命令行程序可以将 SVG 转换为 PNG?

答案1

或者不安装任何东西:

qlmanage -t -s 1000 -o . picture.svg 

它将生成宽度为 1000 像素的 picture.svg.png。

我只在 OS X 10.6.3 上测试过它。

答案2

我发现对于我来说,完成这项工作的最佳工具是rsvg-convert

有可能在 brew 中发现with 的brew install librsvg使用方式如下:

rsvg-convert -h 32 icon.svg > icon-32.png

本示例创建一个 32px 高的 png。宽度自动确定。

答案3

图像魔术师是一个极其多功能命令行图像编辑器,如果拥有 GUI,它可能会与 Photoshop 相媲美。但无论如何,谁需要那些呢。:P

安装后,类似下面的操作会将 .svg 转换为 .png:

$ convert picture.svg picture.png

原始的.svg 未被删除。

答案4

好的,如果您有 Google Chrome,我发现了一种在 Mac 上执行此操作的简单方法。

(即使是将webpChrome 中的文件转换为png或,这种方法也有效jpg

一句话概括就是svg在网页中查看图片(必须在文件中html),右键点击图片选择“复制图片”粘贴到预览应用中。

脚步:

  1. 下载或将svg文件保存到您的硬盘中,例如,somefile.svg
  2. 现在,在同一个文件夹中,只需创建一个tmp.html包含以下行的 html 文件:<img src="somefile.svg">
  3. 现在,在 Google Chrome 中打开该 html 文件
  4. 您应该能看到图片。现在只需右键单击图片并选择“复制图片”
  5. 转到 Mac 的预览应用程序,然后选择,"File -> New from Clipboard"
  6. 现在File -> Save您有了该文件png。(或其他文件类型)。

这是在 Mac OS X El Capitan 上的当前 Chrome(版本 48.0)上测试的。

更新:我不确定这是否是由于 Google Chrome 施加的某些限制。我刚刚尝试使用 Chrome 58.0 处理 SVG 文件,通过上述方法我得到了一个很小的图像。如果你也看到这种情况,你也可以使用

<img src="somefile.svg" style="height: 82vh; margin-top: 9vh; margin-left: 9vh">

或者如果您想要更多的利润,请使用:

<img src="somefile.svg" style="height: 64vh; margin-top: 18vh; margin-left: 18vh">

然后屏幕上就会出现一张足够好的图像,您可以用它来截屏——例如,使用CmdShift4CmdShift3使用 Mac。首先,请确保将 Chrome 窗口的大小调整到屏幕允许的最大大小。

相关内容