python 中的服务器端 SVG 到 PNG(或其他图像格式)
目前,我正在使用 rsvg 加载 svg(从字符串,而不是从文件)并绘制到开罗。有人知道更好的方法吗?我在应用程序的其他地方使用 PIL,但我不知道如何使用 PIL 来执行此操作。
Currently I'm using rsvg to load the svg (from a string, not from a file) and drawing to cairo. Anyone know a better way? I use PIL elsewhere in my application, but I don't know of a way to do this with PIL.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这是我目前拥有的:
Here's what I currently have:
图像魔法怎么样? - http://www.imagemagick.org/script/magick-vector-graphics .php 它可以从标准输入/标准输出读取/写入,因此即使您不想使用文件,也可以将其与您的应用程序集成
How about imagemagic? - http://www.imagemagick.org/script/magick-vector-graphics.php It can read/write from/to stdin/stdout so You can integrate it with your app even if You don't want to use files
您还可以使用 PhantomJS 来实现此目的(请参阅 http://phantomjs.org/screen-capture.html)
从 shell:
或者从使用 selenium 的 python:
You can also use PhantomJS for this (see http://phantomjs.org/screen-capture.html)
From a shell:
Or from python using selenium:
我安装了 inkscape,所以我只是将进程外包给 inkscape 命令 inkscape -f file.svg -e file.png
使用此代码:
我使用的是 Windows 7,并收到 Windows 5 错误 [访问被拒绝](或类似的内容),直到我切换到 inkscape 目录
I have inkscape installed so I am just farming out the process to the inkscape command with inkscape -f file.svg -e file.png
Using this code:
I am on windows 7, and got the Windows 5 Error [Access Denied] (or something like that) until I switched to the inkscape directory
WebP、AVIF 和 JPEG XL 正在取代 PNG。
WebP, AVIF, and JPEG XL are replacing PNG.