Змінювач зображень на стороні сервера - CSS-хитрощі

Anonim

Код використовує 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.

Зображення відображатимуться так: