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


PHP Imagick filter()用法及代碼示例


Imagick::filter()函數是PHP中的內置函數,用於將自定義卷積內核應用於圖像。核,卷積矩陣或掩碼是小矩陣。它用於模糊,銳化,壓紋,邊檢測等。

用法:

bool Imagick::filter( $ImagickKernel, $channel = Imagick::CHANNEL_UNDEFINED )

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


  • $ImagickKernel:它是一個內核或一個由多個內核組成的鏈接係列,通常用於映像。
  • $channel:它是根據模式使用的常數。它是整數類型,並且通道的默認值為Imagick::CHANNEL_DEFAULT。

返回值:當成功將濾鏡應用於圖像時,它將返回true。

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

程序:

<?php 
  
// Declare an imagick object 
$imagick = new Imagick( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-9.png'); 
  
// Declare convolution matrix 
$matrix = [ 
    [-1, 0, -1], 
    [0,  5,  0], 
    [-1, 0, -1], 
]; 
       
$kernel = \ImagickKernel::fromMatrix($matrix); 
  
$strength = 0.5; 
  
// Scaling the image on kernel 
$kernel->scale($strength, \Imagick::NORMALIZE_KERNEL_VALUE); 
  
// Use addUnityKernel() function 
$kernel->addUnityKernel(1 - $strength); 
   
// Use filter() function  
$imagick->filter($kernel); 
  
header("Content-Type: image/jpg"); 
  
// Display the output image 
echo $imagick->getImageBlob(); 
?>

輸出:

參考: https://www.php.net/manual/en/imagick.filter.php



相關用法


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