English | 简体中文 | 繁體中文
查询

Imagick::evaluateImage()函数—用法及示例

「 对图像进行像素级的计算和操作 」


函数名称:Imagick::evaluateImage()

函数描述:Imagick::evaluateImage() 方法对图像进行像素级的计算和操作。它允许您应用各种算术、逻辑和几何操作来改变图像的外观。

适用版本:该函数在 Imagick 扩展版本 2.3.0 及以上可用。

语法:public bool Imagick::evaluateImage(int $op, float $constant [, int $channel = Imagick::CHANNEL_DEFAULT ])

参数:

  • $op: 操作类型,可以是下列之一:
    • Imagick::EVALUATE_ADD:将常数添加到像素值。
    • Imagick::EVALUATE_SUBTRACT:从像素值中减去常数。
    • Imagick::EVALUATE_MULTIPLY:将像素值乘以常数。
    • Imagick::EVALUATE_DIVIDE:将像素值除以常数。
    • Imagick::EVALUATE_MAX:将像素值设置为常数和像素值之间的最大值。
    • Imagick::EVALUATE_MIN:将像素值设置为常数和像素值之间的最小值。
    • Imagick::EVALUATE_POW:将像素值设置为像素值的指数幂。
    • Imagick::EVALUATE_LOG:将像素值设置为像素值的对数。
    • Imagick::EVALUATE_THRESHOLD:将像素值设置为大于常数的像素值为白色,否则为黑色。
    • Imagick::EVALUATE_THRESHOLDBLACK:将像素值设置为小于常数的像素值为黑色,否则为白色。
    • Imagick::EVALUATE_THRESHOLDWHITE:将像素值设置为大于常数的像素值为白色,否则为黑色。
    • Imagick::EVALUATE_GAUSSIAN_NOISE:将像素值设置为正态分布的噪声。
    • Imagick::EVALUATE_IMPULSE_NOISE:将像素值设置为脉冲噪声。
    • Imagick::EVALUATE_LAPLACIAN_NOISE:将像素值设置为拉普拉斯噪声。
  • $constant: 常数值,根据操作类型的不同,可以是一个浮点数或整数。
  • $channel (可选): 指定要应用操作的通道,默认为 Imagick::CHANNEL_DEFAULT。

返回值:成功时返回 true,失败时返回 false。

示例:

// 创建一个 Imagick 对象
$image = new Imagick('image.jpg');

// 将图像的像素值减去常数
$image->evaluateImage(Imagick::EVALUATE_SUBTRACT, 50);

// 显示图像
header('Content-Type: image/jpeg');
echo $image;

上述示例中,我们创建了一个 Imagick 对象,并加载了一个名为 "image.jpg" 的图像文件。然后,我们使用 evaluateImage() 方法将图像的像素值减去了常数值 50。最后,我们将处理后的图像作为 JPEG 图像输出到浏览器。

请注意,示例中的代码仅演示了 evaluateImage() 方法的基本用法,您可以根据实际需求进行更复杂的像素级操作。

补充纠错
热门PHP函数
分享链接