PHP-GD: Подгонка изображения под точные параметры


Цель: получить картинку нужных размеров.В начале прогоняется через скрипт, который ресайзит до максимальной высоты 1001px. Далее сравниваем размеры с нужными нам:

//узнаем размеры фото
$size = getimagesize($fileout);
$ww = $size[0];
$hh = $size[1];
//узнаем разницу
if ($ww < $newxsize) $new_w = $newxsize-$ww;
if ($hh < $newysize) $new_h = $newysize-$hh;

$src = imagecreatefromjpeg($fileout);
//создаем пустую подложку с задаными параметрами и заливаем белым цветом
$dest = imagecreatetruecolor(770, 1001); 
$white = imagecolorallocate($dest, 255, 255, 255);
imagefill($dest, 0, 0, $white);
//накладываем фото на подложку
imagecopy($dest, $src, $new_w, $new_h, 0, 0, 770, 1001);

header('Content-Type: image/jpeg');
imagejpeg($dest, null, 85);
imagedestroy($dest);