1

我已经建立了一个系统,该系统收集由代码输入并从数据库中收集的图像(对我的问题并不重要),但基本上它用于重新着色一系列图像。我遇到的问题是我尝试使用的图像是灰度的,但是灰度的末端错误!

基本上我拥有的图像是白色的,变成黑色的。但是 imagefilledrectangle 只允许 RGB 127.5,127.5,127.5 成为选择的确切颜色而不是白色......我该如何改变这个?

如果有帮助,这是我的代码:

function postimage(&$image, $dir, $name, $check, $override, $color)
{
    $temp = imagecreatefrompng("./images/imager/".$dir.$name.".png");
    imagelayereffect($temp, IMG_EFFECT_OVERLAY);
    if ($check == 0)
    {
        imagefilledrectangle($temp, 0, 0, 64, 110, imagecolorallocate($temp, $color[0], $color[1], $color[2]));
    }
    else if ($check == 1)
    {
        if ($override == 0)
        {
            imagefilledrectangle($temp, 0, 0, 64, 110, imagecolorallocate($temp, 255, 255, 255));
        }
    }
    $black = imagecolorallocate($temp, 255, 255, 255);
    imagecolortransparent($temp, $black);
    imagecopymerge($image, $temp, 0, 0, 0, 0, imagesx($temp), imagesy($temp), 100);
    imagedestroy($temp);
    return true;
}

提前致谢

4

0 回答 0