📜  PHP |想象一下 colorMatrixImage()函数

📅  最后修改于: 2022-05-13 01:56:40.100000             🧑  作者: Mango

PHP |想象一下 colorMatrixImage()函数

Imagick::colorMatrixImage()函数是PHP中的一个内置函数,用于对图像应用颜色变换。此函数会引起饱和度变化、色调旋转、亮度到 alpha 以及各种其他效果。此函数使用可变大小的变换矩阵,即RGBA5×5矩阵和CMYKA6×6矩阵。

句法:

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

参数:此函数接受单个参数$color_matrix ,该参数用于保存 RGBA 的 5×5 矩阵,行表示红色、绿色、蓝色、alpha 输出,列表示红色、绿色、蓝色、alpha 输入,而最后一行和亮度调节栏。在 CMYKA 的 6×6 矩阵中,行表示青色、品红色、黄色、Key 或黑色,alpha 输出,列表示 Cyan、Magenta、Yellow、Key 或黑色、alpha 输入,而 alpha 用于亮度调整与 RGBA 类似, CMYKA 也有最后一行和最后一列用于亮度调整。

返回值:该函数成功返回True,失败返回False。

下面的程序说明了PHP中的 Imagick::colorMatrixImage()函数:

程序:

evaluateImage(
    Imagick::EVALUATE_MULTIPLY, 
    0.6, 
    Imagick::CHANNEL_ALPHA
);
   
// Create new Imagick object
$background = new \Imagick();
  
// Creating new pseudo image with hexagon pattern
$background->newPseudoImage(
    $imagick->getImageWidth(), 
    $imagick->getImageHeight(),  
    "pattern:hexagons"
);
   
// Set the image format
$background->setImageFormat('png');
$imagick->setImageFormat('png');
  
// Use Imagick::colorMatrixImage() function
$imagick->colorMatrixImage($colorMatrix);
  
// Use Imagick::compositeImage() function     
$background->compositeImage(
    $imagick, 
    \Imagick::COMPOSITE_SRCATOP,
    0,
    0
);
  
header("Content-Type: image/png");
  
// Display the output image
echo $background->getImageBlob();
   
?>

输出:

参考: https://www. PHP.net/manual/en/imagick.colormatriximage。 PHP