【问题标题】:SVG to JPEG via PHP4通过 PHP4 将 SVG 转为 JPEG
【发布时间】:2010-11-13 17:19:51
【问题描述】:

我目前正在为一个附带项目而苦苦挣扎,希望您能帮助我。

我正在尝试使用 PHP4 将 SVG 图像转换为 JPEG。

最初我尝试通过 PHP 4.2.2 附带的 php_java.dll 和 jar 来interface java with php,但是虽然我从未收到任何警告,但我从未设法让最简单的测试工作。所有关于它的文本都是针对 JDK1.4 的,article on setting it up on O'Reilly website 是针对 JDK1.2 的。那将使我能够使用Batik

于是我更加努力地查看并看到了使用 PHP:GD 将 SVG 转换为 JPEG 的神秘参考。 GD 似乎能够加载和保存 JPEG、PNG、GIF 等,但不能直接加载和保存 SVG。 GD 似乎使用矢量图形格式,但不完全确定它是否兼容 SVG(我对两者都是菜鸟)。

我确实找到了Perl GD::SVG module,但显然需要 Perl - 考虑到我在使用 PHPJava 时遇到的问题,我不愿意走这条路。

我还找到了一个网站(我现在找不到),它讨论了 rsvg、Cairo 和其他几个网站的各种 SVG 转换速度。谈到将 SVG 转换为 JPEG 的应用程序,人们还讨论了 ImageMagick。虽然这可能适用于作为服务器的 linux 机器,但我 99% 的开发都是在 Windows 中完成的 - 因此更喜欢纯 PHP 解决方案,而不是与不同平台上的应用程序之间的差异作斗争。

我现在正在考虑编写一个 SVG->GD 转换器。最后一种选择是通过Raphael 在浏览器中使用SVG。我宁愿在服务器上转换为 JPEG 并正常提供图像。

有没有人使用过 SVG->GD,知道任何操作系统(但不是 GPL)转换器或有更好的想法?

【问题讨论】:

    标签: svg php4


    【解决方案1】:

    它没有维护,我不能保证,但你没有提到这个选项。这听起来像是你试图用蜡染做的事情。

    http://pear.php.net/package/XML_svg2image/

    不知道这是否有帮助。

    【讨论】:

    • 这就是我试图用蜡染做的。
    【解决方案2】:

    我终于设法通过从 Sun 的存档下载和安装 1.4 JDK 来修复它。工作没问题。在 1.4 和 1.6.14 之间肯定有一些变化,但我很高兴我让它工作了。

    此外,在研究有关此主题的博客文章时,我发现 Image_Canvas 可能是一个更好的选择(即它是用 PHP 编写的)。

    【讨论】:

      猜你喜欢
      • 2011-09-09
      • 2019-08-08
      • 1970-01-01
      • 1970-01-01
      • 2016-09-06
      • 1970-01-01
      • 1970-01-01
      • 2015-11-14
      • 2011-04-30
      相关资源
      最近更新 更多