我正在尝试通过使用 Python 脚本将 SVG 转换为 PNG 来保存图表。所以我开始将 svg 数据存储在一个变量中:
var svgdata = Ext.draw.engine.SvgExporter.generate(chart.surface);
当我这样做时alert(svgdata)
,我可以看到这个输出是正确的。
但是当我像这样将它发送到服务器时:
Ext.draw.engine.ImageExporter.defaultUrl = "data/svg_to_png.py?svgdata="+svgdata;
已发送的 svgdata 如下所示:
<?xml version=
我是 extjs 的新手,请帮我解决这个问题。将 svg 数据发送到我的 python 脚本并渲染 png 图像的正确方法是什么?
这是我的python脚本:
import cairo
import cgi
import rsvg
print "Content-type: image/png\n\n"
arguments = cgi.FieldStorage()
img = cairo.ImageSurface(cairo.FORMAT_ARGB32, 640,480)
ctx = cairo.Context(img)
handler= rsvg.Handle(None, str(arguments["svgdata"]))
handler.render_cairo(ctx)
img.write_to_png("svg.png")
请帮帮我!