使用RSVG将svg转换为非本地映像

时间:2014-10-14 15:37:13

标签: ubuntu svg imagemagick librsvg rsvg

我有一个SVG图像,如下所示,我正在尝试转换为PNG:

<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg"
    xmlns:xlink="http://www.w3.org/1999/xlink">
  <image x="0" y="0" width="158" height="158"
     xlink:href="http://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png" />
</svg>

这是在Ubuntu 10.04上工作,但现在在12.04它没有。原因似乎是RSVG现在不会加载任何没有相对路径的图像URL。

这不是一个选项 - 我的网站生成SVG(所以我知道它是安全的)但它需要通过HTTP加载图像。

图片在Chrome中显示正常,但在Imagemagick,Gimp或(奇怪的)Inkscape中没有显示。

如果它有助于我通过PHP使用Imagemagick,但RSVG是此处SVG转换的委托。

有没有人对如何解决这个问题有任何想法,没有重新编译librsvg?

我已经尝试了ImageMagick (RSVG) won't import images in SVG处的建议,看起来很可疑就是这个问题:rsvg doesn't render linked images


我在这里找到了负责的代码:https://git.gnome.org/browse/librsvg/tree/rsvg-base.c#n2169

我可能是错的,但似乎他们已经禁用了其他网址的加载,没有任何方法可以重新启用它而不进行重新编译?

0 个答案:

没有答案