Resizer Image Side Server - Triky CSS

Anonim

Tento kód používá PHP ke změně velikosti obrázku (aktuálně pouze jpeg.webp). Pomocí této metody je obrázek se změněnou velikostí mnohem lepší kvality než změna velikosti na straně prohlížeče. Velikost souboru nového zmenšeného obrázku je také menší (rychlejší stahování).

Kód má dvě části:

  • imageResizer () se používá ke zpracování obrazu
  • loadimage () vloží adresu URL obrázku v jednodušším formátu
 $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; ) ?>

Používání

Výše uvedený kód by byl v souboru s názvem image.php.

Obrázky by se zobrazovaly takto: