PHP ImageColorAllocate返回值

时间:2015-07-24 11:15:42

标签: php gd

我有以下代码来设置2种颜色:

$_colours = array(
    0 => array(
        'r' => 255,
        'g' => 0,
        'b' => 0
    ),
    1 => array(
        'r' => 0,
        'g' => 255,
        'b' => 0
    )
);

$col[0] = ImageColorAllocate($base_image,$_colours[0]['r'],$_colours[0]['g'],$_colours[0]['b']);
$col[1] = ImageColorAllocate($base_image,$_colours[1]['r'],$_colours[1]['g'],$_colours[1]['b']);

但是,$col[0]$col[1]分别返回01,而不是红色和绿色,我实际上是黑色和白色。我认为这些应该返回该颜色的数字,而不是1/0。

此外,我可以将这些r/g/b值更改为几乎任何其他值,我仍然可以获得相同的返回值。

我还需要做些什么吗?

1 个答案:

答案 0 :(得分:0)

如果分配失败,

imageColorAllocate会返回color identifierFALSE

您的数组应该是资源(标识符),而不是颜色。

尝试:

imagesetpixel($base_image,5,5,$col[0]);

应使用标识符绘制带有颜色的像素。