Rob*_*ert 6 php linux svg imagemagick rsvg
我有一个大的SVG文件(大约60 MB,10000x10000像素但有可能变大),我想要创建许多平铺的256x256 PNG图像(在这个例子中会有1600个图像) ;圆形(10000/256)^ 2).
有没有人知道如何在Web服务器上执行此操作(运行PHP等)?我想过rsvg,但它似乎没有任何功能来修改边界框(我宁愿避免为每个部分手动操作).ImageMagick也许可以做到,但我没有太多运气让它运转起来.使用rsvg创建一个大的PNG,然后使用专用于拼贴非常大的图像的工具可能会有效,但我没有运气找到这样的东西!速度并不是一个真正的问题,虽然它是可取的,所以如果最坏的情况发生,我可能会考虑修改SVG的每个部分的边界框.不过,我可以看到这一代人永远在走!
有谁知道这样做的任何方法?
编辑2016-03-02:
我最近再次回到需要这个问题的答案,并且Inkscape似乎是唯一能够以给定大小呈现特定区域的SVG的工具(svgexport
几乎满足这些要求,但它不允许您更改宽高比) .
我的目标是将SVG平铺到256x256磁贴中,现在我已经成功制作了一个脚本,可以通过重复渲染inkscape
大约16,000 x 16,000并平铺生成的图像来平铺任意大的SVG .我已成功渲染尺寸超过500,000 x 500,000像素的SVG - 内存使用没有问题(这需要很长时间!)
inkscape有一个命令行模式来导出pngs,带一个可选参数来选择要导出的区域
inkscape vector.svg --export-png=raster.png --export-area=0:0:100:100
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4175 次 |
最近记录: |