PHP | Función imagecolorclosestalpha()

La función imagecolorclosestalpha() es una función incorporada en PHP que se usa para obtener el índice del color más cercano con valor alfa en la imagen dada. Esta función devuelve el índice del color en la paleta de la imagen que está más cerca del valor RGB y el nivel alfa especificados. El valor alfa representa la transparencia de la imagen.

Sintaxis: 

int imagecolorclosestalpha ( $image, $red, $green, $blue, $alpha )

Parámetros: esta función acepta cinco parámetros, como se mencionó anteriormente y se describe a continuación:  

  • $imagen: lo devuelve una de las funciones de creación de imágenes, como imagecreatetruecolor(). Se utiliza para crear el tamaño de la imagen.
  • $red: este parámetro se utiliza para establecer el valor del componente de color rojo.
  • $verde: este parámetro se utiliza para establecer el valor del componente de color verde.
  • $azul: este parámetro se utiliza para establecer el valor del componente de color azul.
  • $alfa: este parámetro se utiliza para establecer la transparencia de la imagen. El valor de $alpha se encuentra entre 0 y 127, donde 0 representa completamente opaco mientras que 127 representa completamente transparente.

Valor devuelto: esta función devuelve el índice del color más cercano en la paleta. 

Los siguientes programas ilustran la función imagecolorclosestalpha() en PHP:

Programa 1:  

PHP

<?php
 
// Convert an image into a palette-based image
$image = imagecreatefrompng(
'https://media.geeksforgeeks.org/wp-content/uploads/col1.png');
 
imagetruecolortopalette($image, false, 255);
 
// Find closest color in image
$output = imagecolorclosestalpha($image, 155, 40, 200, 50);
$output = imagecolorsforindex($image, $output);
$output = "({$output['red']}, {$output['green']},
          {$output['blue']}, {$output['alpha']})";
 
echo "Closest match: " . $output . "\n";
 
imagedestroy($image);
?>

Producción: 

Closest match: (100, 58, 108, 0)

Programa 2:  

PHP

<?php
 
// Convert an image into a palette-based image
$image = imagecreatefrompng(
'https://media.geeksforgeeks.org/wp-content/uploads/col1.png');
 
imagetruecolortopalette($image, false, 255);
 
// Search the given rgb color.
$color = array(
    array(155, 40, 200, 50),
    array(235, 205, 188, 127),
    array(135, 00, 132, 0),
);
 
// Loop to return the closest color match.
foreach($color as $id => $rgb)
{
    $output = imagecolorclosestalpha($image, $rgb[0],
                          $rgb[1], $rgb[2], $rgb[3]);
                           
    $output = imagecolorsforindex($image, $output);
     
    $output = "({$output['red']}, {$output['green']},
              {$output['blue']}, {$output['alpha']})";
 
    echo "Given color: ($rgb[0], $rgb[1], $rgb[2], $rgb[3])
                 => Closest match: $output <br>";
}
 
imagedestroy($image);
?>

Producción: 

Given color: (155, 40, 200, 50) => Closest match: (100, 58, 108, 0) 
Given color: (235, 205, 188, 127) => Closest match: (100, 58, 108, 0) 
Given color: (135, 0, 132, 0) => Closest match: (100, 58, 108, 0) 

Artículos relacionados: 

Referencia: http://php.net/manual/en/function.imagecolorclosestalpha.php
 

Publicación traducida automáticamente

Artículo escrito por Mahadev99 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *