• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • Imagick::tintImage()

    (PECL imagick 2.0.0)

    Applies a color vector to each pixel in the image

    说明

    Imagick::tintImage(mixed $tint, mixed $opacity[,bool $legacy= FALSE]): bool

    Applies a color vector to each pixel in the image. The length of the vector is 0 for black and white and at its maximum for the midtones. The vector weighing function is f(x)=(1-(4.0*((x-0.5)*(x-0.5)))).

    参数

    $tint
    $opacity

    返回值

    成功时返回TRUE

    错误/异常

    错误时抛出 ImagickException。

    更新日志

    版本说明
    2.1.0 Now allows a string representing the color as the first parameter and a float representing the opacity value as the second parameter. Previous versions allow only an ImagickPixel objects.

    范例

    Example #1 Imagick::tintImage()

    <?php
    function tintImage($r, $g, $b, $a) {
        $a = $a / 100;
        $imagick = new \Imagick();
        $imagick->newPseudoImage(400, 400, 'gradient:black-white');
        $tint = new \ImagickPixel("rgb($r, $g, $b)");
        $opacity = new \ImagickPixel("rgb(128, 128, 128, $a)");
        $imagick->tintImage($tint, $opacity);
        $imagick->setImageFormat('png');
        header("Content-Type: image/png");
        echo $imagick->getImageBlob();
    }
    ?>