如何在PHP中创建.webp图像

如何在PHP中创建.webp图像,php,image,webp,Php,Image,Webp,如何使用PHP创建.webp图像 PHP(>=5.5.0)的现代版本可以使用WebP支持进行编译,但从我的经验来看,这在许多web主机上并不常见。如果使用WebP支持编译,则可以使用内置的创建.WebP图像 使用PHP创建.webp图像的备选方案有哪些?库、API和其他方法 您可以直接转到Google,从源代码构建WebP库。使用此链接可获取适用于您的操作系统的相应存档: 然后,可以在php system()函数中使用以下命令来转换图像: 语法: cwebp [quality qual

如何使用PHP创建
.webp
图像

PHP(>=5.5.0)的现代版本可以使用
WebP
支持进行编译,但从我的经验来看,这在许多web主机上并不常见。如果使用WebP支持编译,则可以使用内置的创建
.WebP
图像


使用PHP创建
.webp
图像的备选方案有哪些?库、API和其他方法

您可以直接转到Google,从源代码构建WebP库。使用此链接可获取适用于您的操作系统的相应存档:

然后,可以在php system()函数中使用以下命令来转换图像:

语法:

  cwebp [quality 
 qualitypercentage] [source 
 image] -o [destination]`

 cwebp -q 80 source.png -o 
 destination.webp
我建议您阅读上面的链接以编译您的库


祝你在这个项目上好运

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 . " ");
:在php中执行给定的命令


现在有几个npm软件包可以从PNG、JPEG和TIFF格式创建
.webp
图像


这里有一个Gulp插件作为示例-。

当前可用的选项有:gd(扩展)、imagick(扩展)、imagick(执行调用)、gmagick(扩展)、gmagick(执行调用)、cwebp(执行调用)、gmagick(执行调用)或调用云服务。我在github上创建了一个库“webp convert”,它尝试了所有方法。自述文件描述了每种方法的优缺点。可在以下位置获取:

出于我所不知道的原因,imagick/gmagick扩展生成的文件质量并不比原始文件好。这只是扩展的问题,而不是exec调用的问题。

您可以使用。它提供了各种图像编码选项和与图像格式化相关的实用程序。是将图像转换为
webp
格式的示例代码段。它支持多种图像编码,如下所示

  • jpg-返回JPEG编码的图像数据
  • png-返回便携式网络图形(png)编码的图像数据
  • 返回图形交换格式(gif)编码的图像数据
  • tif-返回标记图像文件格式(TIFF)编码图像数据
  • bmp-返回位图(bmp)编码的图像数据
  • ico-返回ico编码的图像数据
  • psd-返回Photoshop文档(psd)编码的图像数据
  • webp-返回webp编码的图像
  • 数据url-在数据URI方案中编码当前图像数据(RFC 2397)

ImageMagick包含一个WebP扩展。附带说明:Firefox暂时不支持它。所以在浏览器中显示是当前的选项。我过去曾使用Modernizer测试webp支持,然后有条件地显示适当的图像格式。希望随着时间的推移,更多的浏览器会增加对webp的支持。您是从什么创建您的.webp图像的?假设您正在将JPEG或PNG“转换”为WebP,您只需使用
imagecreatefromjpeg
imagecreatefrompng
创建一个图像资源,然后使用
imagewebp($im,'file.WebP')保存即可您也可以使用convert(imagick)批处理convert,或者调用Cloudinary这样的服务:(棒极了的服务,顺便说一句!),这正是我在@EduardoRomero尝试做的。但是,许多服务器仍然不支持webp扩展,因此我正在寻找可以轻松插入的第三方库。这是一个离题的话题,但您能否推荐一些教程/视频,帮助理解从源代码构建库的确切含义?