我有一個大的SVG文件(大約60 MB,10000x10000像素,但有可能會變得更大),我想創建,例如,從它的許多平鋪的256x256 PNG圖像(在這個例子中會有1600張圖片;圓形(10000/256)^ 2)。如何將大型SVG文件轉換爲平鋪PNG?
有沒有人有任何想法如何在Web服務器上執行此操作(運行PHP等)?我想過rsvg,但它似乎沒有任何功能來修改邊界框(我寧願避免爲每個部分手動執行)。 ImageMagick可能能夠做到這一點,但我沒有運行得很好。使用rsvg創建一個大的PNG,然後使用一個專用於平鋪非常大的圖像的工具可能會奏效,但我一直沒有找到這樣的東西!速度並不是真正的問題,雖然它是可取的,所以如果最糟糕的是最壞的,我可能會考慮修改每節的SVG邊界框。儘管如此,我可以看到這代人永遠在享受着!
任何人都知道任何方法來做到這一點?
編輯2016年3月2日:
最近,我又折回來需要爲這個問題的答案,以及Inkscape中似乎可在給定的尺寸顯示出給定區域SVGs(唯一的工具svgexport
幾乎滿足這些要求,但它不會讓您改變寬高比)。
我的目標是將SVG拼貼成256x256拼貼,現在我已經成功製作了一個腳本,可以通過在大約16,000 x 16,000的inkscape
中重複渲染並平鋪得到的圖像來平鋪任意大的SVG。我已經成功渲染了尺寸超過500,000 x 500,000像素的SVG - 沒有內存使用問題(只需要很長時間!)
你試過rsvg-convert,然後呢? http://ubuntuforums.org/showthread.php?t=820965 – 2010-06-26 04:44:37
是的;它似乎創建了一個很好的渲染,但之後我有問題分裂它。糾正我,如果我錯了,但它似乎沒有任何內置的平鋪或指定區域的功能(所有操作符似乎用於指定比例,主要是)。 – Robert 2010-06-26 09:04:52
ImageMagick應該可以做到這一點(它可能會更容易轉變爲一個巨大的PNG雖然) – Spudd86 2010-06-27 02:39:49