如何.webp
使用 PHP 创建图像?
现代版本的 PHP (>= 5.5.0) 可以在WebP
支持下编译,但据我所知,这在许多网络主机上并不常见。如果编译时支持 WebP,您可以使用内置imagewebp()
函数创建.webp
图像。
.webp
使用 PHP创建图像的替代方法是什么?库、API 其他方法?
如何.webp
使用 PHP 创建图像?
现代版本的 PHP (>= 5.5.0) 可以在WebP
支持下编译,但据我所知,这在许多网络主机上并不常见。如果编译时支持 WebP,您可以使用内置imagewebp()
函数创建.webp
图像。
.webp
使用 PHP创建图像的替代方法是什么?库、API 其他方法?
当前可用的选项有:gd(扩展)、imagick(扩展)、imagick(执行调用)、gmagick(扩展)、gmagick(执行调用)、cwebp(执行调用)、gmagick(执行调用)或调用云服务。我在 github 上创建了一个库“webp-convert”,它尝试了所有方法。自述文件描述了每种方法的优缺点。它在这里可用:https ://github.com/rosell-dk/webp-convert 。
由于我不知道的原因,imagick/gmagick 扩展不会产生比原始文件更好的质量。这只是扩展的问题,而不是 exec 调用。
webp图像创建过程:
您可以使用以下 php 命令获取 webp 图像
$imgName = "codingslover.jpg";
$webPName = "codingslover.webp";
Syntax:
cwebp [quality qualitypercentage] [source image] -o [destination]
exec("cwebp -q 0 ".$imgName." -o ".$webPName." ");
Anthor Method:
exec("convert -colorspace RGB ".$imgName." ".$webPName . " ");
Exec : 在 php 中执行给定的命令
您可以直接访问 Google 并从源代码构建 WebP 库。使用此链接为您的操作系统获取适当的存档:
https://developers.google.com/speed/webp/docs/compiling#building
然后您可以在 php system() 函数中使用以下命令来转换图像:
句法:
cwebp [quality
qualitypercentage] [source
image] -o [destination]`
cwebp -q 80 source.png -o
destination.webp
我建议阅读上面的链接来编译你的库,然后去这里获取更多关于使用库的信息。
祝项目好运!
您可以使用干预图像库。它提供了与图像格式相关的各种图像编码选项和实用程序。这webp
是将图像转换为格式的示例代码片段。它支持多种图像编码,如下所示,
现在有几个 npm 包可以.webp
从 PNG、JPEG 和 TIFF 格式创建图像。
这是一个 Gulp 插件作为示例 - gulp-webp。