hug*_*gie 0 python django image python-imaging-library pycairo
我想用Pycairo生成一个动态创建的png图像,然后用它来设置Django.我读到这个:使用Django提供动态生成的图像.
有没有办法将Pycairo表面的数据直接传输到HTTP响应中?我现在这样做:
data = surface.to_rgba()
im = Image.frombuffer ("RGBA", (width, height), data, "raw", "RGBA", 0,1)
response = HttpResponse(mimetype="image/png")
im.save(response, "PNG")
return response
Run Code Online (Sandbox Code Playgroud)
但它实际上不起作用,因为没有to_rgba调用(这个调用我发现使用谷歌代码,但不起作用).
编辑:to_rgba可以用正确的调用get_data()替换,但我仍然想知道我是否可以完全绕过PIL.
def someView(request):
surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, 100, 100)
context = cairo.Context(surface)
# Draw something ...
response = HttpResponse(mimetype="image/png")
surface.write_to_png(response)
return response
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2091 次 |
| 最近记录: |