Palvelimen puolella olevan kuvan koon muuttaminen - CSS-temppuja

Anonim

Koodi käyttää PHP: tä kuvan koon muuttamiseen (tällä hetkellä vain jpeg.webp). Tätä menetelmää käyttämällä muutettu kuva on paljon parempaa laatua kuin selainpuolen koon muuttaminen. Myös uuden pienennetyn kuvan tiedostokoko on pienempi (nopeampi ladata).

Koodi tulee kahteen osaan:

  • imageResizer (): ää käytetään kuvan käsittelyyn
  • loadimage () lisää kuvan URL-osoitteen yksinkertaisempaan muotoon
 $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; ) ?>

Käyttö

Yllä oleva koodi olisi tiedostossa image.php.

Kuvat näytetään näin: