La función ImagickPixel::setColorValueQuantum() es una función incorporada en PHP que se utiliza para establecer el valor del canal de color proporcionado para un color de ImagickPixel dado. El valor puede estar en un rango de 0 a 65535.
Sintaxis:
bool ImagickPixel::setColorValueQuantum( 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::setColorValueQuantum() en PHP:
Programa 1:
<?php // Create a new imagickPixel object $imagickPixel = new ImagickPixel(); // Set the color value $imagickPixel->setColorValueQuantum(imagick::COLOR_BLUE, 4500); // Get the Color value with imagick::COLOR_BLUE $colorValue = $imagickPixel->getColorValueQuantum(imagick::COLOR_BLUE); echo $colorValue; ?>
Producción:
4500
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(); $x = 200; // Loop through pixel rows foreach ($imageIterator as $row => $pixels) { // Loop through the pixels in the row if ($row % 2) { foreach ($pixels as $column => $pixel) { if ($column % 1000) { // Set the color $pixel->setColor("red"); // Set the color value of Imagick::COLOR_RED $pixel->setColorValueQuantum(Imagick::COLOR_RED, $x); $x = $x + 1000; } } } // 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.setcolorvaluequantum.php