在PHP中,可以使用一些庫和工具來壓縮和優(yōu)化WebP圖片
cwebp是一個命令行工具,用于將JPEG、PNG等格式的圖片轉(zhuǎn)換為WebP格式。首先,確保已經(jīng)安裝了libwebp庫,然后使用以下命令進(jìn)行安裝:
sudo apt-get install webp
接下來,可以使用cwebp命令將圖片轉(zhuǎn)換為WebP格式并設(shè)置壓縮參數(shù):
<?php
$input = 'input.jpg';
$output = 'output.webp';
$quality = 80; // 范圍從0到100,數(shù)值越高質(zhì)量越好
exec("cwebp -q $quality $input -o $output");
?>
PHP的GD庫和Imagick擴(kuò)展都支持WebP格式的處理。以下是使用這兩種方法的示例:
使用GD庫:
<?php
$input = 'input.jpg';
$output = 'output.webp';
$quality = 80;
$image = imagecreatefromjpeg($input);
imagewebp($image, $output, $quality);
imagedestroy($image);
?>
使用Imagick擴(kuò)展:
<?php
$input = 'input.jpg';
$output = 'output.webp';
$quality = 80;
$image = new Imagick($input);
$image->setImageFormat('webp');
$image->setImageCompression(Imagick::COMPRESSION_WEBP);
$image->setImageCompressionQuality($quality);
$image->writeImage($output);
$image->destroy();
?>
有一些第三方庫可以幫助你更輕松地處理WebP圖片,例如image-optimizer。要使用這個庫,首先需要安裝它:
composer require ps/image-optimizer
然后,可以使用以下代碼將圖片轉(zhuǎn)換為WebP格式并設(shè)置壓縮參數(shù):
<?php
require 'vendor/autoload.php';
use Ps\ImageOptimizer\ImageOptimizer;
$input = 'input.jpg';
$output = 'output.webp';
$quality = 80;
$optimizer = new ImageOptimizer();
$optimizer->optimize($input, $output, ['webp_quality' => $quality]);
?>
通過使用這些技巧,可以在PHP中有效地壓縮和優(yōu)化WebP圖片。