我正在使用基於開羅/ RSVG的解決方案將SVG轉換爲PNG。它已經在StackOverflow的Convert SVG to PNG in Python中描述過了。 但是,此解決方案似乎不適用於自定義字體。我找到了this page describing embedding SVG fonts。使用Python中的自定義字體將SVG轉換爲PNG
我試圖通過XLink將它們從外部SVG包含進來,如示例中所述。我試圖直接在相同的SVG文件中嵌入字體。由於失敗,我嘗試了CSS Web字體語法。在使用Cairo進行渲染時,這三種方法都不起作用(它也不適用於GNOME的Ubuntu默認查看器Eye)。
我試過ImageMagick,結果和開羅一模一樣。
另一方面,使用全部3種字體嵌入方法,WebKit中的字體都可以使用Google Chrome或webkit2png.py進行渲染。但是,如果可能的話,我想避免在服務器上使用QT WebKit,因爲它是非常簡單的設置(包括xvfb等),我擔心這可能不會導致非常高效且不穩定。
是否有任何替代方法從Python渲染SVG到PNG?
不太確定這是我想安裝在服務器上的軟件 – vartec
@vartec:至少需要*某些第三方產品。不知道爲什麼Inkscape應該比任何其他解決方案更值得信賴。對於Windows,如果您不想安裝該產品,也可以使用便攜式版本http://portableapps.com/apps/graphics_pictures/inkscape_portable,可以直接運行,不需要任何管理員權限,也不需要整合到系統中。 –
剛剛嘗試過,根本不起作用。不僅不渲染自定義字體,而且不處理使用XLink插入的外部圖像。 – vartec