【发布时间】:2014-04-25 00:30:12
【问题描述】:
我正在尝试导航 GDBackend 的 Silverstripe 类定义,但无法设置交错值。
我目前在_config.php 中设置质量:
config::inst()->update('GDBackend', 'default_quality', 60);
然后我尝试使用以下设置隔行扫描:
config::inst()->update('GDBackend', 'image_interlace', 1);
这是设置这些值的正确方法吗?很难知道此类中所有的弃用情况。
上传图片时,文件大小会减小 - 因此质量似乎设置正确,但隔行扫描设置无效。
此外,日志没有任何错误。
-------------------- 更新:
在咨询 Silverstripe IRC 频道后,我已将配置设置移动到 yml 中,如下所示。
GDBackend:
default_quality: 60
image_interlace: 1
上传后图像仍然没有交错。
我正在使用this tool 来测试隔行扫描。
-------------------- 结论:
事实证明,这些设置不是上传处理的一部分,仅适用于 CMS 生成的图像。例如,前缀为 SetWidth400-image-name.jpg 的图像将按照 yml 配置的指示进行交错和优化。
我将研究扩展上传模块,让用户可以选择在上传时交错图像。
感谢 colymba 帮助我解决这个问题。
【问题讨论】:
标签: php image gd silverstripe interlacing