1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00
Files
archived-php-src/ext/gd/tests/gh17349.phpt
Christoph M. Becker 2c658f422d Fix GH-17349: Tiled truecolor filling looses single color transparency
This is porting the relevant part of a previous upstream commit[1] to
align the behavior of our bundled libgd with upstream.  It should be
noted that this only works if the image actually has a transparent
color.

[1] <4770e2b2d5>

Closes GH-17351.
2025-01-04 14:53:18 +01:00

28 lines
744 B
PHP

--TEST--
GH-17349 (Tiled truecolor filling looses single color transparency)
--EXTENSIONS--
gd
--FILE--
<?php
require_once __DIR__ . "/func.inc";
$tile = imagecreatetruecolor(8, 8);
$red = imagecolorallocate($tile, 255, 0, 0);
imagefilledrectangle($tile, 0, 0, 7, 7, $red);
imagecolortransparent($tile, $red);
$im = imagecreatetruecolor(64, 64);
$bg = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 63, 63, $bg);
imagecolortransparent($im, $bg);
$fg = imagecolorallocate($im, 0, 0, 0);
imageellipse($im, 31, 31, 50, 50, $fg);
imagesettile($im, $tile);
imagealphablending($im, false);
imagefill($im, 31, 31, IMG_COLOR_TILED);
test_image_equals_file(__DIR__ . "/gh17349.png", $im);
?>
--EXPECT--
The images are equal.