Я пытаюсь объединить два изображения - изображение GIF с изображением меньшего размера JPG . Результат должен быть GIF .
Проблема заключается в том, что цвета изображения GIF остаются правильными, но цвета изображения JPG изменяются.
Изображение GIF имеет только 256 цветов (8-бит), но есть ли способ сделать объединенное изображение ресурсом с истинным цветом, который позже можно преобразовать в 8-битный GIF для вывода?
Я обновил код. Вот решение, которое отлично работает:
<?php
header('Content-Type: image/gif');
$gif_address = 'file.gif';
$jpg_address = 'file.jpg';
$image1 = imagecreatefromgif($gif_address);
$image2 = imagecreatefromjpeg($jpg_address);
$merged_image = imagecreatetruecolor(800, 800);
imagecopymerge($merged_image, $image1, 0, 0, 0, 0, 800, 800, 100);
imagecopymerge($merged_image, $image2, 0, 0, 0, 0, 500, 500, 100);
imagegif($merged_image);
imagedestroy($image1);
imagedestroy($image2);
imagedestroy($merged_image);
?>