Я хочу, чтобы изображения И ИР создавали из файлов объединенное изображение в соответствии с данными ID. Этот код вызывается ajax и возвращает имя файла изображения (время сервера для предотвращения кеширования браузера). код:Неправильные цвета при слиянии изображений с PHP
if (isset($_REQUEST['items'])){
$req_items = $_REQUEST['items'];
} else {
$req_items = 'a';
}
$items = explode(',',$req_items);
$bg_img = imagecreatefrompng('bg.png');
for ($i=0; $i<count($items); $i++){
$main_img = $items[$i].'-large.png';
$image = imagecreatefrompng($main_img);
$image_tc = imagecreatetruecolor(300, 200);
imagecopy($image_tc,$image,0,0,0,0,300,200);
$black = imagecolorallocate($image_tc, 0, 0, 0);
imagecolortransparent($image_tc, $black);
$opacity = 100;
$bg_width = 300;
$bg_height = 200;
$dest_x = 0;//$image_size[0] - $bg_width - $padding;
$dest_y = 0;//$image_size[1] - $bg_height - $padding;
imagecopymerge($bg_img, $image_tc, $dest_x, $dest_y, 0, 0, $bg_width, $bg_height, $opacity)
;
}
$file = $_SERVER['REQUEST_TIME'].'.jpg';
imagejpeg($bg_img, $file, 100);
echo $file;
imagedestroy($bg_img);
imagedestroy($image);
die();
Изображения отображаются точно так, как я хочу, но с неправильным цветом. Я в последнее время добавил часть с imagecreatetruecolor и imagecolortransparent, и все еще получил неправильные результаты.
Я также сохранил сам PNG в 24-битном формате, а также позже, как 8 бит - не помогая. все идеи приветствуются! Благодаря