Imagick::filter()
(No version information available, might only be in Git)
Description
说明
public Imagick::filter(ImagickKernel$ImagickKernel[,int $channel= Imagick::CHANNEL_UNDEFINED]): bool
Applies a custom convolution kernel to the image.
参数
- $ImagickKernel
An instance of ImagickKernel that represents either a single kernel or a linked series of kernels.
- $channel
Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators.缺省为
Imagick::CHANNEL_DEFAULT
.参考此通道常数列表
返回值
成功时返回TRUE
。
范例
Example #1 Imagick::filter()
<?php function filter($imagePath) { $imagick = new \Imagick(realpath($imagePath)); $matrix = [ [-1, 0, -1], [0, 5, 0], [-1, 0, -1], ]; $kernel = \ImagickKernel::fromMatrix($matrix); $strength = 0.5; $kernel->scale($strength, \Imagick::NORMALIZE_KERNEL_VALUE); $kernel->addUnityKernel(1 - $strength); $imagick->filter($kernel); header("Content-Type: image/jpg"); echo $imagick->getImageBlob(); } ?>
-----Imagick 3.4.3 && ImageMagick 7.0.6 -----why cannot find filter method????? if (!method_exists(Imagick, 'filter')) { echo 'undefined filter()!'; } else { echo 'defined filter()!'; }
-----Imagick::filter cannot work! -----suse linux server , imagick module version 3.4.3 -----run Example #1 Imagick::filter() , there is no result! where is problem? thank you for your answer! Alex