Generating image thumbnails using php - without ru

2019-01-27 07:06发布

问题:

I am currently using a php gd implementation to resize images which constantly runs out of memory - rather quickly. I guess the problem are the php functions, like imagecreatefromstring etc.

Is there an easy implementation to resizing images which doesn't use this functions, so I won't have to increase my php.ini memory limit?

回答1:

GD don't use that much memory, so you have other problems in your code.

If you resize multiple images and don't call imagedestroy on a newly created image, you run in memory leaks.



回答2:

here is a PHP function for you

 function make_thumb($src, $dest, $desired_width,$desired_h) {

  /* read the source image */
  $source_image = imagecreatefromjpeg($src);
  $width = imagesx($source_image);
  $height = imagesy($source_image);

  $desired_height = $desired_h;

  /* create a new, "virtual" image */
  $virtual_image = imagecreatetruecolor($desired_width, $desired_height);

  /* copy source image at a resized size */
  imagecopyresampled($virtual_image, $source_image, 0, 0, 0, 0, $desired_width, $desired_height, $width, $height);

  /* create the physical thumbnail image to its destination */
  imagejpeg($virtual_image, $dest);
}