如何在背景栅格上叠加svg矢量图形

时间:2013-07-31 10:18:33

标签: python graphics svg png

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

最好是在python中。我已经尝试过cairo和rsvg但是在将svg转换为png后我得到了黑色的bacground。

    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后,我用python PIL覆盖了两个png文件

Image.blend(background, overlay, 0.5 )

也许有一个简单的解决方案,直接用svg覆盖背景(没有svg到png)?

电贺。

1 个答案:

答案 0 :(得分:0)

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