Kod, bir görüntüyü yeniden boyutlandırmak için PHP kullanır (şu anda yalnızca jpeg.webp). Bu yöntem kullanıldığında, yeniden boyutlandırılan görüntünün kalitesi, tarayıcı tarafında yeniden boyutlandırmaya göre çok daha iyidir. Yeni küçültülmüş görüntünün dosya boyutu da daha küçüktür (indirmesi daha hızlıdır).
Kod iki bölümden oluşur:
- imageResizer (), görüntüyü işlemek için kullanılır
- loadimage (), resim url'sini daha basit bir biçimde ekler
$ratio_orig) ( $width = $height*$ratio_orig; ) else ( $height = $width/$ratio_orig; ) // This resamples the image $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg.webp($url); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // Output the image imagejpeg.webp($image_p, null, 100); ) //works with both POST and GET $method = $_SERVER('REQUEST_METHOD'); if ($method == 'GET') ( imageResize($_GET('url'), $_GET('w'), $_GET('h')); ) elseif ($method == 'POST') ( imageResize($_POST('url'), $_POST('w'), $_POST('h')); ) // makes the process simpler function loadImage($url, $width, $height)( echo 'image.php?url=', urlencode($url) , '&w=',$width, '&h=',$height; ) ?>
Kullanım
Yukarıdaki kod, image.php adlı bir dosyada olacaktır.
Görüntüler şu şekilde görüntülenecektir: