如何在PHP中创建.webp图像

时间:2014-08-11 16:49:14

标签: php image webp

如何使用PHP创建.webp图像?

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

使用PHP创建.webp图像有哪些替代方法?库,API等其他方法?

5 个答案:

答案 0 :(得分:4)

目前可用的选项有:gd(扩展名),imagick(扩展名),imagick(exec-call),gmagick(扩展名),gmagick(exec-call),cwebp(exec-call),gmagick(exec调用)或者调用云服务。我创建了一个库' webp-convert'在github上尝试所有方法。自述文件描述了每种方法的优缺点。它可以在这里找到:https://github.com/rosell-dk/webp-convert

由于我不知道的原因,imagick / gmagick扩展产生的质量没有原始文件好。这只是扩展的问题,而不是exec调用。

答案 1 :(得分:2)

您可以直接访问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

我建议您阅读上面的链接以编译您的库,然后go here to get more information about using the libraries

祝你好运!

答案 2 :(得分:2)

网络图片制作流程

您可以使用以下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

中执行给定的命令

http://php.net/manual/en/function.exec.php

答案 3 :(得分:0)

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

以下是一个Gulp插件 - gulp-webp

答案 4 :(得分:0)

您可以使用Intervention Image Library。它提供了各种与图像格式有关的图像编码选项和实用程序。 Here是将图像转换为func navigationController(_ navigationController: UINavigationController, animationControllerFor operation: UINavigationController.Operation, from fromVC: UIViewController, to toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? { switch operation { case .push: return TransitionAnimator(presenting: true) case .pop: return TransitionAnimator(presenting: false) default: return nil } } 格式的示例代码片段。它支持下面列出的多种图像编码,

  • jpg —返回JPEG编码的图像数据
  • png —返回可移植网络图形(PNG)编码的图像数据
  • gif —返回图形交换格式(GIF)编码的图像数据
  • tif —返回标记图像文件格式(TIFF)编码的图像数据
  • bmp —返回位图(BMP)编码的图像数据
  • ico —返回ICO编码的图像数据
  • psd —返回Photoshop文档(PSD)编码的图像数据
  • webp —返回WebP编码的图像
  • data data-url —以数据URI方案(RFC 2397)编码当前图像数据