<?php namespace Spatie\MediaLibrary\Conversions\ImageGenerators; use Illuminate\Support\Collection; use Spatie\MediaLibrary\Conversions\Conversion; class Webp extends ImageGenerator { public function convert(string $file, Conversion $conversion = null): string { $pathToImageFile = pathinfo($file, PATHINFO_DIRNAME).'/'.pathinfo($file, PATHINFO_FILENAME).'.png'; $image = imagecreatefromwebp($file); imagepng($image, $pathToImageFile, 9); imagedestroy($image); return $pathToImageFile; } public function requirementsAreInstalled(): bool { if (! function_exists('imagecreatefromwebp')) { return false; } if (! function_exists('imagepng')) { return false; } if (! function_exists('imagedestroy')) { return false; } return true; } public function supportedExtensions(): Collection { return collect(['webp']); } public function supportedMimeTypes(): Collection { return collect(['image/webp']); } }