【发布时间】:2018-02-06 05:18:54
【问题描述】:
在我的开发服务器上一切正常,我通过表单上传的图像被转换为
Image::make($img)->encode('webp');
当我去检查它时,它是完美的。
在我的生产服务器上,情况有点不同,例如,如果我上传一个方形图像(完全红色),在编码后我会得到一个褐色/金色的图像,而其他图像我会得到一个空白空间。
由于正在创建图像,我认为只是编码有问题,可能是我错过了一些配置..
开发服务器上的 GD 库版本为 2.4.1,生产服务器上的版本为 2.1.1
一切都在 Ubuntu 17.10 开发版和 16.04 生产版上运行。
Laravel 5.5 版
编辑
开发和生产中的 PHP 版本 7.0
编辑 2
出来的就是这种形象
【问题讨论】:
-
我遇到了一些关于 GD 的问题 - 你尝试过 ImageMagick 吗?
-
我尝试安装 imagemagick(编译时支持 webp)并设置 imagick 模块,但它说“这个 imagick 安装不支持 webp 格式”
-
也许这个来自 gdlib 的问题会帮助你:github.com/libgd/libgd/issues/254
-
尝试提高质量?
Image::make($img)->encode('webp', 100); -
我现在尝试将其设置为 ->encode('webp', 100) 但没有成功。还是一样的质量。
标签: php laravel gd laravel-5.5 intervention