imagecolorclosestalpha
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
imagecolorclosestalpha — Obtener el índice del color más próximo al color + alpha especificado
Descripción
$image
, int $red
, int $green
, int $blue
, int $alpha
)
Devuelve el índice del color en la paleta de la imagen que
está "más próximo" al valor RGB especificado y al
nivel alpha especificado.
Parámetros
-
image -
Un recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().
-
red -
Valor del componente rojo.
-
green -
Valor del componente verde.
-
blue -
Valor del componente azul.
-
alpha -
Un valor entre 0 y 127. 0 indica completamente opaco mientras que 127 indica completamente transparente.
Valores devueltos
Devuelve el índice del color más próximo en la paleta.
Ejemplos
Ejemplo #1 Buscar un conjunto de colores en una imagen
<?php
// Comenzar con una imagen y convertirla a una imagen basada en paleta de colores
$im = imagecreatefrompng('figures/imagecolorclosest.png');
imagetruecolortopalette($im, false, 255);
// Buscar colores (RGB)
$colores = array(
array(254, 145, 154, 50),
array(153, 145, 188, 127),
array(153, 90, 145, 0),
array(255, 137, 92, 84)
);
// Itera cada búsqueda y encuentra el color más próximo en la paleta.
// Devuelve el número de búsqueda, el RGB de búsqueda y la coincidencia RGB convertida
foreach($colores as $id => $rgb)
{
$resultado = imagecolorclosestalpha($im, $rgb[0], $rgb[1], $rgb[2], $rgb[3]);
$resultado = imagecolorsforindex($im, $resultado);
$resultado = "({$resultado['red']}, {$resultado['green']}, {$resultado['blue']}, {$resultado['alpha']})";
echo "#$id: Búsqueda ($rgb[0], $rgb[1], $rgb[2], $rgb[3]); Coincidencia más próxima: $resultado.\n";
}
imagedestroy($im);
?>
El resultado del ejemplo sería algo similar a:
#0: Search (254, 145, 154, 50); Closest match: (252, 150, 148, 0). #1: Search (153, 145, 188, 127); Closest match: (148, 150, 196, 0). #2: Search (153, 90, 145, 0); Closest match: (148, 90, 156, 0). #3: Search (255, 137, 92, 84); Closest match: (252, 150, 92, 0).
Notas
Nota: Esta función require GD 2.0.1 o superior (se recomienda 2.0.28 o superior).
Ver también
- imagecolorexactalpha() - Obtener el índice del color + alpha especificado
- imagecolorclosest() - Obtener el índice del color más próximo al color especificado
- imagecolorclosesthwb() - Obtener el índice del color que tiene el tono, blancura y negrura