【问题标题】:Image resizing in WordPress fails when image dimensions are over approximately 4200 x 4200当图像尺寸超过大约 4200 x 4200 时,WordPress 中的图像大小调整失败
【发布时间】:2014-04-17 15:35:05
【问题描述】:

我正在使用Simple Local Avatars 插件。我在处理某些图像时遇到问题。问题似乎与图像尺寸有关,而不是与图像文件大小有关。

无论文件大小或尺寸如何,都会上传图像。这是“完整”或原始图像。

当get_avatar() 函数生成新的文件大小时,我的问题似乎发生了。我已经粘贴了插件here 中使用的get_avatar 函数以供参考。如果“完整”图像的尺寸小于 4200 x 4200 左右,则调整大小有效。但是,如果尺寸大于该尺寸,例如 5200 x 5200,则调整大小将失败。在/uploads/ 文件夹中不会生成调整大小的图像,并且不会将调整大小的值记录到用户元表中的simple_local_avatars 键。

您可以在get_avatar 函数中看到,wp_get_image_editor() 用于调整大小。

可能是什么问题,我该如何解决?

【问题讨论】:

  • 日志文件中有什么内容?
  • 一个 4200x4200 24 位彩色图像一旦加载到 GD 中需要大约 52 兆字节的内存...您的脚本无疑会因内存不足错误而失败,并且您已经得到了所有的日志记录/错误显示选项已关闭,因此您永远不会被告知。 5200x5200@24bit 需要约 81 兆。
  • 我刚刚使用phpinfo() 检查了我的内存限制,它设置为120M - 这应该足以满足 5200 x 5200 吗?

标签: php wordpress


【解决方案1】:

我应该是内存不足的错误。

在脚本的开头试试这个:

<?php

ini_set('memory_limit','128M');

#and display errors to see whats happening

error_reporting(E_ALL);
ini_set("display_errors", 1);

#rest of the code goes here

?>

如果您的服务器允许更改内存限制,它应该可以工作。

【讨论】:

  • 感谢@pbs 的信息 - 我的 memory_limit 已经设置为 120M,所以我认为这不是内存问题?
猜你喜欢
  • 2017-02-04
  • 1970-01-01
  • 2012-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-27
  • 1970-01-01
相关资源
最近更新 更多