我想将我创建的SVG呈现给高分辨率(600 DPI)PNG。此SVG具有滤镜效果,特别是高斯模糊。
理想情况下,渲染可以通过命令行完成。
我知道SVG是可渲染的,因为你可以在Chrome / Chromium中打开它,我希望看到的输出是。
导入Adobe Illustrator
svg2png
ImageMagick的
Inkscape中
我现在忘记的其他命令行工具和程序。基本上你可以在谷歌找到任何东西。
知道Chromium可以很好地渲染SVG并且它是开源的,我想我会下载库Chromium依赖于渲染SVG(Skia,https://sites.google.com/site/skiadocs/)并使用它来输出PNG。到目前为止,我已经成功安装了Skia并运行了第一个示例。我找到了一个示例,它呈现了一个SVG(https://code.google.com/p/skia/source/browse/trunk/samplecode/SampleSVG.cpp?r=875),但是在我的OSX机器上没有使用XCode和命令行工具的最新更新成功运行它。该示例(带有gyp文件)的修改版本输出PNG将是惊人的。
从Chrome获取像素数据(我该怎么做?由于图像的分辨率,简单的截图是不够的。我还想要一个可编写脚本,可重复的过程。)
使用可以渲染SVG的其他图形库。也许这来自其他网络浏览器,也许不是。
答案 0 :(得分:2)
这似乎很有效:
webkit2png -F blue.svg -o rendered
-F
表示生成Full
分辨率PNG且没有缩略图,-o
指定输出文件名为rendered-full.png
。
我缩小了尺寸以适应Stack Overflow,但显示的命令实际上提供了全分辨率的2880x2880图像。