Server Side Image Resizer - CSS-trucs

Anonim

De code gebruikt PHP om het formaat van een afbeelding te wijzigen (momenteel alleen jpeg.webp). Door deze methode te gebruiken, is het formaat van de afbeelding van veel betere kwaliteit dan het wijzigen van de grootte van de browser. De bestandsgrootte van de nieuwe verkleinde afbeelding is ook kleiner (sneller te downloaden).

De code bestaat uit twee delen:

  • imageResizer () wordt gebruikt om de afbeelding te verwerken
  • loadimage () voegt de afbeeldings-URL in een eenvoudiger formaat in
 $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; ) ?>

Gebruik

De bovenstaande code zou zich in een bestand met de naam image.php bevinden.

Afbeeldingen worden als volgt weergegeven: