在花了两天时间尝试使用
ImageMagick从SVG字符串中栅格化jpeg后,我终于放弃了.
虽然我设法让实际的转换工作正常但是Imagemagick在渲染图像时无法正确转换变换/旋转功能,使输出与原始SVG不同.
进一步研究后,似乎这是一个已知问题,’Inkscape’是用于在PHP中将SVG转换为jpeg / png的最佳方法.
问题是我的SVG数据是通过JSON发送到我的PHP脚本的.如何在Inkscape命令行中获取blob或字符串以使其转换?
非常感谢任何建议.
如果您有一个SVG字符串,并且您通过AJAX将其从浏览器发送到服务器,则需要将其写入临时文件,因此可以从Inkscape命令行引用它.您无法使用Inkscape命令行渲染为JPEG,但您可以轻松渲染到PNG,如果您确实需要不同的格式,当然您可以随后使用ImageMagick进行转换.
你需要这样的东西:
/path/to/inkscape \ --without-gui \ --export-png=/path/to/output.png \ /tmp/file/input.svg
如果您接受用户的完整/部分SVG输入,请记住,您需要记住许多安全问题.如果需要,很高兴扩展这个.
原文地址:https://www.jb51.cc/php/134276.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。