Как создать.WebP изображение в PHP

как создать .webp изображения с использованием PHP?

современные версии PHP (>= 5.5.0) могут быть скомпилированы с WebP поддержка, но из Я видел, что это не распространено на многих веб-хостах. При компиляции с поддержкой WebP вы можете использовать встроенный imagewebp() функции создать .webp картинки.

каковы альтернативы для создания .webp изображения с использованием PHP? Библиотеки, API другие методы?

4 ответов


в настоящее время доступны следующие опции: gd (расширение), imagick (расширение), imagick (exec-call), gmagick (расширение), gmagick (exec-call), cwebp (exec-call), gmagick (exec call) или вызов облачной службы. Я создал библиотеку "webp-convert" на github, которая пробует все методы. Ридми-файл описывает плюсы и минусы каждого метода. Его можно найти здесь: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

http://php.net/manual/en/function.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

Я бы рекомендовал прочитать приведенную выше ссылку, чтобы скомпилировать ваши библиотеки, а затем перейдите сюда, чтобы получить дополнительную информацию об использовании библиотек.

удачи с проектом!


теперь есть несколько пакетов npm для создания .webp изображения из форматов PNG, JPEG и TIFF.

вот один плагин Gulp в качестве примера -gulp-webp.