La función ImagickPixel::setColorValue() es una función incorporada en PHP que se utiliza para establecer el valor normalizado del canal de color proporcionado para un color de ImagickPixel dado. El valor normalizado es un número de punto flotante entre 0 y 1.
Sintaxis:
bool ImagickPixel::setColorValue( int $color, float $value )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $color: Especifica las constantes de COLOR .
La lista de todas las constantes de COLOR se proporciona a continuación:- imagick::COLOR_NEGRO (11)
- imagick::COLOR_AZUL (12)
- imagick::COLOR_CYAN (13)
- imagick::COLOR_VERDE (14)
- imagick::COLOR_RED (15)
- imagick::COLOR_AMARILLO (16)
- imagick::COLOR_MAGENTA (17)
- imagick::COLOR_OPACIDAD (18)
- imagick::COLOR_ALPHA (19)
- imagick::COLOR_FUZZ (20)
- $value: Especifica el valor a establecer.
Valor de retorno: esta función devuelve VERDADERO en caso de éxito.
Excepciones: esta función lanza ImagickException en caso de error.
Los siguientes programas ilustran la función ImagickPixel::setColorValue() en PHP:
Programa 1:
<?php // Create a new imagickPixel object $imagickPixel = new ImagickPixel(); // Set the color value $imagickPixel->setColorValue(imagick::COLOR_RED, 0.8); // Get the Color value with imagick::COLOR_RED $colorValue = $imagickPixel->getColorValue(imagick::COLOR_RED); echo $colorValue; ?>
Producción:
0.8
Programa 2:
<?php // Create a new imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); // Get the pixel iterator to iterate through each pixel $imageIterator = $imagick->getPixelIterator(); // Loop through pixel rows foreach ($imageIterator as $row => $pixels) { // Loop through the pixels in the row if ($row % 5) { foreach ($pixels as $column => $pixel) { if ($column % 1000) { // Set the color $pixel->setColor("green"); // Set the color value of Imagick::COLOR_ALPHA (opacity) $pixel->setColorValue(Imagick::COLOR_ALPHA, 0); } } } // Sync the iterator after each iteration $imageIterator->syncIterator(); } header("Content-Type: image/jpg"); echo $imagick; ?>
Producción:
Referencia: https://www.php.net/manual/en/imagickpixel.setcolorvalue.php