Код использует PHP для изменения размера изображения (в настоящее время только jpeg.webp). При использовании этого метода измененное изображение имеет гораздо лучшее качество, чем изменение размера на стороне браузера. Размер файла нового уменьшенного изображения также меньше (более быстрая загрузка).
Код состоит из двух частей:
- imageResizer () используется для обработки изображения
- loadimage () вставляет URL-адрес изображения в более простом формате
$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; ) ?>
использование
Приведенный выше код будет в файле с именем image.php.
Изображения будут отображаться так: