Всем привет! Меняю размер картинки, с jpeg работает все ок, а вот с png проблемы, не сохраняет прозрачный фон. Пробовал добавить:
imagealphablending($img_o, false);
imagesavealpha($img_o, true);
Не помогает.
Когда imagejpeg меняю на imagepng, то вообще ничего ничего не происходит.
Вот код:
list($w_i, $h_i, $type) = getimagesize($image);
$types = array("", "gif", "jpeg", "png");
$ext = $types[$type];
if ($ext) {
$func = 'imagecreatefrom'.$ext;
$img_i = $func($image);
} else {
echo "Ошибка";
return false;
}
$h_o = $w_o / ($w_i / $h_i);
if (!$w_o) $w_o = $h_o / ($h_i / $w_i);
$img_o = imagecreatetruecolor($w_o, $h_o);
imagealphablending($img_o, false);
imagesavealpha($img_o, true);
imagecopyresampled($img_o, $img_i, 0, 0, 0, 0, $w_o, $h_o, $w_i, $h_i);
header('Content-type: image/jpeg');
imagejpeg($img_o, null, 100);