Merhaba;
Verot kütüphanesi kullanıyorum. Ayrıca webpConvert ile'de yüklenen görselin webp olmasını sağlamak istiyorum.
Aşağıdaki koda
$this->webpConvert2($yol);
veya
$image->webpConvert2($yol);
ekliyorum fakat bu seferde hiç kayıt etmiyor. Nasıl yapabilirim?
public function webpConvert2($file, $compression_quality = 80)
{
    // check if file exists
    if (!file_exists($file)) {
        return false;
    }
    $file_type = exif_imagetype($file);
    //https://www.php.net/manual/en/function.exif-imagetype.php
    //exif_imagetype($file);
    // 1    IMAGETYPE_GIF
    // 2    IMAGETYPE_JPEG
    // 3    IMAGETYPE_PNG
    // 6    IMAGETYPE_BMP
    // 15   IMAGETYPE_WBMP
    // 16   IMAGETYPE_XBM
    $output_file =  $file . '.webp';
    if (file_exists($output_file)) {
        return $output_file;
    }
    
    if (function_exists('imagewebp')) {
        switch ($file_type) {
            case '1': //IMAGETYPE_GIF
            $image = imagecreatefromgif($file);
            break;
            case '2': //IMAGETYPE_JPEG
            $image = imagecreatefromjpeg($file);
            break;
            case '3': //IMAGETYPE_PNG
            $image = imagecreatefrompng($file);
            imagepalettetotruecolor($image);
            imagealphablending($image, true);
            imagesavealpha($image, true);
            break;
            case '6': // IMAGETYPE_BMP
            $image = imagecreatefrombmp($file);
            break;
            case '15': //IMAGETYPE_Webp
            return false;
            break;
            case '16': //IMAGETYPE_XBM
            $image = imagecreatefromxbm($file);
            break;
            default:
            return false;
        }
        // Save the image
        $result = imagewebp($image, $output_file, $compression_quality);
        if (false === $result) {
            return false;
        }
        // Free up memory
        imagedestroy($image);
        return $output_file;
        } elseif (class_exists('Imagick')) {
        $image = new Imagick();
        $image->readImage($file);
        if ($file_type === "3") {
            $image->setImageFormat('webp');
            $image->setImageCompressionQuality($compression_quality);
            $image->setOption('webp:lossless', 'true');
        }
        $image->writeImage($output_file);
        return $output_file;
    }
    return false;
}  


public function resim_yukle($thumb = false,$name,$dadi,$yol,$x = false,$y = false,$filtre = true){
if($filtre == false){ // filtre yok ise
if($thumb == true){
@move_uploaded_file($_FILES[$name]["tmp_name"],$yol.'/thumb/'.$dadi);
}else{
@move_uploaded_file($_FILES[$name]["tmp_name"],$yol.'/'.$dadi);
}
return $dadi;
}else{ // eğer filtre true ise
if(is_array($name)){
$ho     = $name;
}else{
$ho     = $_FILES[$name];
}
$image = new Upload($ho);
if ($image->uploaded) { // Resim seçilmiş ise
$resim                      = $dadi;
$uzanti                     = $this->uzanti($dadi);
// Yeniden adlandıralım.
$image->file_new_name_body = str_replace($uzanti,"",$resim);
if($x == true OR $y == true){
$image->image_resize = true;
if($x != false AND $y != false){
$image->image_x = $x;
$image->image_y = $y;
}elseif($x != false AND $y == false){
$image->image_x = $x;
$image->image_ratio_y = true;
}elseif($y != false AND $x == false){
$image->image_y = $y;
$image->image_ratio_x = true;
}
} // resize  işlevi gerçekleşiyorsa
// resmi uzantinin formatına convert edelim
$image->image_convert = str_replace(".","",$uzanti);
// sadece resim formatları yüklensin
$image->allowed = array ( 'image/*' );
// Kayıt edilecek  klasör
$yol    = ($thumb == true) ? $yol.'/thumb/' : $yol.'/';


$image->Process($yol);


if (! $image->processed){ // yükleme hatalıysa...
return false;
} // yükleme hatalıysa...
return $dadi;
} // Seçilmiş ise
} // filtre var ise
}