當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP ImagickKernel fromMatrix()用法及代碼示例


ImagickKernel::fromMatrix()函數是PHP中的內置函數,用於從二維值矩陣創建內核。如果使用element,則2d matrix的值或者為float,否則為false。

用法:

ImagickKernel ImagickKernel::fromMatrix( array $matrix, array $origin )

參數:該函數接受上述和以下描述的兩個參數:


  • $matrix:它指定定義內核的值的矩陣。值可以是float或false。
  • $origin (optional):它指定應該用作原始像素的內核元素。僅在非正方形矩陣的情況下才需要。

返回值:成功時,此函數將返回一個新的ImagickKernel對象。

以下示例程序旨在說明PHP中的ImagickKernel::fromMatrix()函數:

程序1:

<?php 
  
// Create a new imagick object 
$imagick = new Imagick( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); 
  
$matrix = [ 
    [-1.5, -1, -0.2], 
    [0, 1, 1], 
    [0, 0.5, 1], 
]; 
  
// Create a kernel from matrix 
$kernel = ImagickKernel::fromMatrix($matrix); 
  
// Add the filter 
$imagick->filter($kernel); 
  
// Show the output 
$imagick->setImageFormat('png'); 
header("Content-Type:image/png"); 
echo $imagick->getImageBlob(); 
?>

輸出:

程序2:

<?php 
  
// Create a new imagick object 
$imagick = new Imagick( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); 
  
$matrix = [ 
    [1, 2, -3], 
    [4, 5, 6], 
    [7, 8, 9] 
]; 
  
// 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] => 2
            [2] => -3
        )

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

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

)

參考: https://www.php.net/manual/en/imagickkernel.frommatrix.php



相關用法


注:本文由純淨天空篩選整理自gurrrung大神的英文原創作品 PHP | ImagickKernel fromMatrix() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。