ImageMagick Imagick::colorMatrixImage

(PECL imagick 3 >= 3.3.0)

Imagick::colorMatrixImage — 설명


설명

public Imagick::colorMatrixImage(array $color_matrix = Imagick::CHANNEL_DEFAULT): bool

이미지에 색상 변환을 적용합니다. 이 방법은 채도 변경, 색조 회전, 알파에 대한 휘도 및 기타 다양한 효과를 허용합니다. 가변 크기 변환 행렬을 사용할 수 있지만 일반적으로 RGBA 이미지에는 5x5 행렬을 사용하고 CMYKA(또는 오프셋이 있는 RGBA)에는 6x6 행렬을 사용합니다. 행렬은 오프셋이 5가 아닌 6열에 있고(CMYKA 이미지 지원) 오프셋이 정규화된다는 점을 제외하고 Adobe Flash에서 사용하는 것과 유사합니다(Flash 오프셋을 255로 나눕니다).


매개변수

color_matrix

반환 값

성공하면 true를 반환합니다.


Examples

예제 #1 Imagick::colorMatrixImage()

                  
<?php
function colorMatrixImage($imagePath, $colorMatrix) {
    $imagick = new \Imagick(realpath($imagePath));
    $imagick->setImageOpacity(1);

    //A color matrix should look like:
    //    $colorMatrix = [
    //        1.5, 0.0, 0.0, 0.0, 0.0, -0.157,
    //        0.0, 1.0, 0.5, 0.0, 0.0, -0.157,
    //        0.0, 0.0, 1.5, 0.0, 0.0, -0.157,
    //        0.0, 0.0, 0.0, 1.0, 0.0,  0.0,
    //        0.0, 0.0, 0.0, 0.0, 1.0,  0.0,
    //        0.0, 0.0, 0.0, 0.0, 0.0,  1.0
    //    ];

    $background = new \Imagick();
    $background->newPseudoImage($imagick->getImageWidth(), $imagick->getImageHeight(),  "pattern:checkerboard");

    $background->setImageFormat('png');

    $imagick->setImageFormat('png');
    $imagick->colorMatrixImage($colorMatrix);

    $background->compositeImage($imagick, \Imagick::COMPOSITE_ATOP, 0, 0);

    header("Content-Type: image/png");
    echo $background->getImageBlob();
}

?>