# imagecolorclosest

(PHP 4, PHP 5, PHP 7, PHP 8)

imagecolorclosest — Obtener el índice del color más próximo al color especificado

### Descripción

imagecolorclosest(
resource `$image`,
int `$red`,
int `$green`,
int `$blue`
): int

Devuelve el índice del color en la paleta de la imagen que está "más próximo" al valor RGB especificado.

La "distancia" entre el color deseado y cada color en la paleta es calculado como si los valores RGB representaran puntos en un espacio tridimensional.

Si se ha creado la imagen a partir de un fichero, sólo se resolverán los colores utilizados en la imagen. No se resolverán los colores que sólo están presentes en la paleta.

### 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.

Los parámetros de colores son enteros entre 0 y 255 o hexadecimales entre 0x00 y 0xFF.

### Valores devueltos

Devuelve el indice del color más próximo, en la paleta de la imagen, al color especificado.

### 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),
array(153, 145, 188),
array(153, 90, 145),
array(255, 137, 92)
);
// 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 = imagecolorclosest($im, $rgb[0], $rgb[1], $rgb[2]);
$resultado = imagecolorsforindex($im, $resultado);
$resultado = "({$resultado['red']}, {$resultado['green']}, {$resultado['blue']})";
echo "#$id: Búsqueda ($rgb[0], $rgb[1], $rgb[2]); Coincidencia más próxima: $resultado.\n";
}
imagedestroy($im);
?>`

El resultado del ejemplo sería algo similar a:

    #0: Búsqueda (254, 145, 154); Coincidencia más próxima: (252, 150, 148).
    #1: Búsqueda (153, 145, 188); Coincidencia más próxima: (148, 150, 196).
    #2: Búsqueda (153, 90, 145); Coincidencia más próxima: (148, 90, 156).
    #3: Búsqueda (255, 137, 92); Coincidencia más próxima: (252, 150, 92).

### Ver también

- imagecolorexact() - Obtener el índice del color especificado
- imagecolorclosestalpha() - Obtener el índice del color más próximo al color + alpha especificado
- imagecolorclosesthwb() - Obtener el índice del color que tiene el tono, blancura y negrura