当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP ImagickKernel getMatrix()用法及代码示例


ImagickKernel::getMatrix()函数是PHP中的内置函数,用于获取内核中使用的2D值矩阵。如果应跳过元素,则元素为float或“ false”。

用法:

array ImagickKernel::getMatrix( void )

参数:此函数不接受任何参数。


返回值:此函数返回包含矩阵的数组值。

以下示例程序旨在说明PHP中的ImagickKernel::getMatrix()函数:

程序1:该程序使用getMatrix()函数从用户定义的矩阵中获取矩阵。

<?php 
  
// Create a new imagick object 
$imagick = new Imagick( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); 
  
$matrix = [ 
    [-1, 0, 0], 
    [4, -1, 6], 
    [7, 8, 6] 
]; 
  
// Create a kernel from matrix 
$kernel = ImagickKernel::fromMatrix($matrix); 
  
// Get the matrix 
$matrix = $kernel->getMatrix(); 
  
print("<pre>".print_r($matrix, true)."</pre>"); 
?>

输出:

Array
(
    [0] => Array
        (
            [0] => -1
            [1] => 0
            [2] => 0
        )

    [1] => Array
        (
            [0] => 4
            [1] => -1
            [2] => 6
        )

    [2] => Array
        (
            [0] => 7
            [1] => 8
            [2] => 6
        )

)

程序2(从内置矩阵获取矩阵):

<?php 
  
// Create a new imagick object 
$imagick = new Imagick( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); 
  
// Create a kernel from built-in matrix 
$kernel = ImagickKernel::fromBuiltIn(Imagick::KERNEL_DISK, "2"); 
  
// Get the matrix 
$matrix = $kernel->getMatrix(); 
  
foreach ($matrix as $row) { 
    foreach ($row as $cell) { 
        if ($cell === false) { 
            $output .= 0; 
        } else { 
            $output .= $cell; 
        } 
    } 
    $output .= "<br>"; 
} 
echo $output; 
?>

输出:

00100
01110
11111
01110
00100

参考: https://www.php.net/manual/en/imagickkernel.getmatrix.php



相关用法


注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | ImagickKernel getMatrix() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。