在预先存在的图像上绘制线条导致颜色错误 - PHP

时间:2012-09-12 13:48:04

标签: php imagecreatefrompng

我正在尝试拍摄地图的图像,并尝试在图像上方绘制红色,白色和蓝色线条。我可以导入地图图像并绘制线条,但线条打印为黑色,而不是指定的颜色。如果我删除imagecreatefrompng部分,则会以正确的颜色显示线条。

map.png是this Image

的本地副本

这是导致问题的代码。

header("Content-type:image/png");

$img=imagecreate(800, 495);

$black_color=imagecolorallocate($img,0,0,0);
$white_color=imagecolorallocate($img,255,255,255);
$red_color=imagecolorallocate($img,255,0,0);
$blue_color=imagecolorallocate($img,0,0,255);
$clear_color=imagecolorallocatealpha($img,0,0,0,0);

$img = imagecreatefrompng('map.png');

imageline($img,550,162,100,200,$red_color);
imageline($img,550,162,200,200,$blue_color);
imageline($img,550,162,300,200,$white_color);


return (imagepng($img));

我非常感谢能够提供正确显示颜色的任何帮助。

1 个答案:

答案 0 :(得分:0)

我动了你的话:

$img = imagecreatefrompng('map.png');

直到下面:

$img=imagecreate(800, 495);

它对我有用。