1--TEST-- 2Bug #66005 (imagecopy does not support 1bit transparency on truecolor images) 3--EXTENSIONS-- 4gd 5--SKIPIF-- 6<?php 7if (!(imagetypes() & IMG_PNG)) { 8 die("skip No PNG support"); 9} 10?> 11--FILE-- 12<?php 13$dest = imagecreatetruecolor(150, 50); 14$transparent = imagecolorallocatealpha($dest, 255, 255, 255, 127); 15imagealphablending($dest, false); 16imagefill($dest, 1, 1, $transparent); 17imagesavealpha($dest, true); 18 19// Palette image with transparent color 20$png_palette = imagecreatefromstring(base64_decode('iVBORw0KGgoAAAANSUhEUgAAADIAAAAyAgMAAABjUWAiAAAACVBMVEUAAAD/AAD///9nGWQeAAAAAXRSTlMAQObYZgAAAEFJREFUKM9jYBimIASZIxoagOAwhoaGInisQJ4DksJQJKWoPCAnNIQYHsgChBX4eMSbiddlqH5A9R+q39HCZWgDAFxFGyOrmguhAAAAAElFTkSuQmCCPHP')); 21 22// 24 bit with transparent color 23$png_24 = imagecreatefromstring(base64_decode('iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABnRSTlMAAAAAAABupgeRAAAAVklEQVRYw+3UQQqAMBAEwf3/p9eTBxEPiWAmWMU8oGFJqgAAuOpzWTX3xQUti+uRJTZ9V5aY1bOTFZLV7yZr9zt6ibv/qPXfrMpsGipbIy7oqQ8AYJED1plDy5PCu2sAAAAASUVORK5CYII=')); 24 25// 32 bit with full alpha channel 26$png_full = imagecreatefromstring(base64_decode('iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAXklEQVRo3u3XMQrAIBBFwb3/pU2VwiJNIvjdzMD2PlBwqwAAAGajatxz9OGf5viA+KA3EXExXyKiYlqErIiIiBGSFLIyYmuMkO7Xy2MX4ovS/ONoH7Eh/m1nBwCASBe3VYeVaAy8PwAAAABJRU5ErkJggg==')); 27 28imagecopy($dest, $png_palette, 0, 0, 0, 0, 50, 50); 29imagecopy($dest, $png_24, 50, 0, 0, 0, 50, 50); 30imagecopy($dest, $png_full, 100, 0, 0, 0, 50, 50); 31 32include_once __DIR__ . '/func.inc'; 33test_image_equals_file(__DIR__ . '/bug66005.png', $dest); 34?> 35--EXPECT-- 36The images are equal. 37