Я пытаюсь изменить размер (сохраняя пропорции) и обрезать избыток изображения (вне пределов миниатюр), но при этом обрезать x = center и y = top.Изменение размера и обрезания в центре по центру
Мне ничего не хватает здесь, но мое окончательное изображение вписывается в область миниатюр, а не заполняет его и обрезает лишний. Надеюсь, кто-то может мне помочь в этом.
Это мой код, до сих пор:
$image_width = 725; // not static, just an example
$image_height = 409; // not static, just an example
// image can be wide or portrait
$width = 140;
$height = 160;
$thumbnail = imagecreatetruecolor($width, $height);
$white = imagecolorallocate($thumbnail, 255, 255, 255);
imagefill($thumbnail, 0, 0, $white);
$width_ratio = $image_width/$width;
$height_ratio = $image_height/$height;
if ($width_ratio>$height_ratio) {
$dest_width=$width;
$dest_height=$image_height/$width_ratio;
}
else{
$dest_width=$image_width/$height_ratio;
$dest_height=$height;
}
$int_width = ($width - $dest_width)/2;
$int_height = ($height - $dest_height)/2;
imagecopyresampled($thumbnail, $original_image, $int_width, $int_height, 0, 0, $dest_width, $dest_height, $image_width, $image_height);
Спасибо!
Prajsnar Исходный размер изображения не фиксирован, это был только пример. Мне плохо, что я этого не сказал. Althou делает то, что вы сказали, это работало для горизонтального изображения, но как насчет вертикальных изображений? – MGP
Просто измените условие '' '' '' '' '' '' '' '' '' ', которое должно это сделать. (Состояние, о котором я упомянул ранее) –
Prajsnar Это сработало! Единственное, что мне сейчас не хватает, - это урожай, всегда начинающийся с вершины (хотя бы 0 сделал бы) .. и не вертикальный центр .. – MGP