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


PHP imagecolorclosest()用法及代碼示例


imagecolorclosest()函數是PHP中的內置函數,用於獲取給定圖像中最接近的顏色的索引。此函數返回最接近指定RGB值的圖像調色板中的顏色索引。

用法:

int imagecolorclosest( $image, $red, $green, $blue )

參數:該函數接受上述和以下所述的四個參數:


  • $image:它由圖像創建函數之一(例如imagecreatetruecolor())返回。它用於創建圖像的尺寸。
  • $red:此參數用於設置紅色分量的值。
  • $green:此參數用於設置綠色分量的值。
  • $blue:此參數用於設置藍色分量的值。

返回值:此函數返回圖像調色板中最接近顏色的索引。

以下示例程序旨在說明PHP中的imagecolorclosest()函數。

程序1:

<?php 
  
// Start with an image and convert it to a palette-based image 
$image = imagecreatefrompng( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeks-21.png'); 
  
imagetruecolortopalette($image, false, 255); 
  
//  Search closest color 
$result = imagecolorclosest($image, 7, 150, 10); 
  
$result = imagecolorsforindex($image, $result); 
  
$result = "({$result['red']}, {$result['green']}, {$result['blue']})"; 
  
echo "Closest color: " . $result; 
  
imagedestroy($image); 
  
?>

輸出:

Closest color: (4, 146, 12)

程序2:

<?php 
  
// Start with an image and convert it to a palette-based image 
$image = imagecreatefrompng( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeks-21.png'); 
  
imagetruecolortopalette($image, false, 255); 
  
// Search RGB colors 
$color = array( 
    array(7, 150, 0), 
    array(53, 190, 255), 
    array(255, 165, 54) 
); 
  
// Loop to find the closest color to the given RGB color 
foreach($color as $id => $rgb) 
{ 
    $result = imagecolorclosest($image, $rgb[0], $rgb[1], $rgb[2]); 
    $result = imagecolorsforindex($image, $result); 
    $result = "({$result['red']}, {$result['green']}, {$result['blue']})"; 
  
    echo "Given color: ($rgb[0], $rgb[1], $rgb[2]) => Closest match: $result<br>"; 
} 
  
imagedestroy($image); 
  
?>

輸出:

Given color: (7, 150, 0) => Closest match: (4, 142, 4)
Given color: (53, 190, 255) => Closest match: (148, 174, 180)
Given color: (255, 165, 54) => Closest match: (148, 162, 164)

相關文章:

參考: http://php.net/manual/en/function.imagecolorclosest.php



相關用法


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