2013-07-31 56 views
0

有谁知道如何在背景栅格(png)上覆盖svg矢量图形?如何在背景栅格上覆盖svg矢量图形

最好在python中。我已经尝试过开罗和rsvg,但是在将svg转换为png后,我得到了黑色的免费版。

img = cairo.ImageSurface(cairo.FORMAT_RGB24, width, height) 

    ctx = cairo.Context(img) 

    print 'svg', tmp_svg  
    handler = rsvg.Handle(None, str(svg_data)) 

    handler.render_cairo(ctx) 
    img.write_to_png('/tmp/test.png') 

SVG转换为PNG之后,我与覆盖蟒蛇PIL 2个PNG文件

Image.blend(background, overlay, 0.5) 

也许有直接覆盖背景SVG简单的解决方案(无SVG至PNG)?

迎接。

+0

我有类似的例子,但我已经使用svgfig在svg文件中嵌入了bmp(与png一起工作) - python lib与svg [link](https://code.google.com/p/svgfig/ )。如果你有兴趣,我会把答案作为例子。 – Aleksandar

回答

0

图像是在运行时确定的,还是预先确定的?如果是后者,则可以将一个<image>元素添加到指向背景图像的SVG。

+0

如何做?如何将元素添加到指向背景图片的SVG? – user1632928

+0

将''元素添加到SVG文件中。像这样:http://jsfiddle.net/eHXmQ/ –