【问题标题】:ImageMagick vs GD - which is faster, less resource intensive and produces better images?ImageMagick vs GD - 哪个更快,资源消耗更少并产生更好的图像?
【发布时间】:2012-01-09 06:59:03
【问题描述】:

对于以下图像处理任务,我需要在 ImageMagick 或 GD 库之间进行选择:

  • 将图像调整为多种尺寸
  • 水印图片

如你所见,我不需要任何花哨的东西。我确信这两种工具都可以实现它们,所以如果其中一种具有比另一种更多的额外功能,我真的不在乎。

我主要关心的是性能和质量。这两种工具中哪一种消耗的资源更少、速度更快、图像质量更好?

附:我需要将它与它们各自的 PHP API 一起使用。

【问题讨论】:

  • 有人告诉我 IM 是一个资源猪。如果您的网站有大量流量,您最好使用 GD。

标签: php image-processing imagemagick gd


【解决方案1】:

我已经构建了 GD 和 ImageMagick 库。如果使用得当,两者都可以正常工作并产生相同尺寸的图像。然而,ImageMagic 提供了更多开箱即用的选项,这正是我现在所倾向于的。

此外,ImageMagick 可作为 bash 脚本或其他终端功能的独立工具使用,这意味着您所学的内容在 PHP 之外也很有用。

【讨论】:

    【解决方案2】:

    如有疑问,请使用 ImageMagick。我没有观察到速度和资源使用方面的任何大差异,但 IM 更灵活,在许多领域质量更好(尽管您可以期望两个库的水印效果都不错),并支持way more formats

    许多使用 GD 复杂或不可能实现的高级操作,使用 ImageMagick 可以轻松完成。

    另一方面,许多托管服务提供商不支持 ImageMagick 和 GD,因此您需要添加相当大的依赖项。根据您项目的性质,这可能是也可能不是问题。

    【讨论】:

    • ImageMagick 的一个主要缺点是安全性。它几个月来一直没有修补严重的安全漏洞,请参阅 ImageTragick 了解最著名的漏洞,但这只是该工具历史上众多安全漏洞之一。
    【解决方案3】:

    就图像质量而言,我倾向于 ImageMagick。它似乎产生比 GD2 更清晰/更高质量的图像(以更大的文件为代价。)

    ImageMagick 也不受 PHP 的内存限制。

    【讨论】:

    • 虽然使用 ImageMagick 是一种乐趣,但请注意这一点:imagetragick.com
    • @Parziphal 我希望我能给你 10 个赞。很棒的发现。
    • 问题解决了吗?网站没说
    猜你喜欢
    • 2021-12-27
    • 2014-01-30
    • 1970-01-01
    • 2011-05-31
    • 2013-04-17
    • 1970-01-01
    • 2012-06-16
    • 2015-04-03
    • 1970-01-01
    相关资源
    最近更新 更多