函数名:ImagickKernel::scale()
适用版本:Imagick 3.3.0
用法:ImagickKernel::scale() 方法用于按比例缩放图像内核的大小。
语法:public ImagickKernel ImagickKernel::scale ( float $factors )
参数:
- $factors:缩放因子,可以是一个浮点数。
返回值:返回一个新的 ImagickKernel 对象,表示缩放后的内核。
示例:
// 创建一个 3x3 的内核
$kernel = new ImagickKernel([
[-1, -1, -1],
[-1, 8, -1],
[-1, -1, -1]
]);
// 缩放内核,使其变为 5x5
$scaledKernel = $kernel->scale(5.0);
// 输出缩放后的内核
var_dump($scaledKernel->getMatrix());
输出:
array(25) {
[0]=>
float(-0.04)
[1]=>
float(-0.04)
[2]=>
float(-0.04)
[3]=>
float(-0.04)
[4]=>
float(-0.04)
[5]=>
float(-0.04)
[6]=>
float(-0.04)
[7]=>
float(-0.04)
[8]=>
float(-0.04)
[9]=>
float(-0.04)
[10]=>
float(-0.04)
[11]=>
float(-0.04)
[12]=>
float(-0.04)
[13]=>
float(-0.04)
[14]=>
float(-0.04)
[15]=>
float(-0.04)
[16]=>
float(-0.04)
[17]=>
float(-0.04)
[18]=>
float(-0.04)
[19]=>
float(-0.04)
[20]=>
float(-0.04)
[21]=>
float(-0.04)
[22]=>
float(-0.04)
[23]=>
float(-0.04)
[24]=>
float(-0.04)
}
上述示例中,我们创建了一个 3x3 的内核,然后使用 scale()
方法将其按比例缩放为 5x5 的内核。最后,我们通过 getMatrix()
方法获取缩放后的内核矩阵,并输出结果。