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


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。