La función Imagick::opaquePaintImage() es una función incorporada en PHP que se usa para reemplazar el color de destino con el valor de color de relleno especificado de cualquier píxel que coincida con el color de destino.
Sintaxis:
bool Imagick::opaquePaintImage( $target, $fill, $fuzz, $invert, $channel = Imagick::CHANNEL_DEFAULT ] )
Parámetros: esta función acepta cinco parámetros, como se mencionó anteriormente y se describe a continuación:
- $objetivo: este parámetro contiene el objeto ImagickPixel o el color de destino que debe cambiarse.
- $fill: este parámetro contiene el color para el reemplazo.
- $fuzz: este parámetro contiene la cantidad de fuzz que estará en tipo flotante.
- $invert: Cambia entre 0 y 1 donde 0 es normal y 1 es inverso.
- $channel: este parámetro contiene las constantes de canal de Imagick que proporcionan cualquier constante de canal que sea válida para el modo de canal. Se puede combinar más de un canal utilizando operadores bit a bit.
Valor devuelto: esta función devuelve VERDADERO en caso de éxito o FALSO en caso de error.
Los siguientes programas ilustran la función Imagick::opaquePaintImage() en PHP:
Programa 1:
<?php // Image Path $imagePath = "https://cdncontribute.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-9.png"; // Target color $target = 'rgb(255, 255, 255)'; // Replacing target color with another color $fill = 'rgb(255, 234, 128)'; $fuzz = '0.1'; // Initialize invert variable $invert = '0'; $imagick = new \Imagick($imagePath); // Set the image format $imagick->setimageformat('png'); $imagick->opaquePaintImage( $target, $fill, $fuzz * \Imagick::getQuantum(), $invert ); // Use despeckleimage() function to reduce // the speckle noise in an image $imagick->despeckleimage(); header("Content-Type: image/png"); // Display the output image echo $imagick->getImageBlob(); ?>
Producción:
Programa 2:
<?php // Image Path $imagePath = "https://media.geeksforgeeks.org/wp-content/uploads/20190826021518/checkerboardgfg.png"; // Target color $target = 'rgb(255, 255, 255)'; // Replacing target color with another color $fill = 'rgb(21, 200, 236)'; $fuzz = '0.1'; // Initialize invert variable $invert = '0'; $imagick = new \Imagick($imagePath); // Set the image format $imagick->setimageformat('png'); $imagick->opaquePaintImage( $target, $fill, $fuzz * \Imagick::getQuantum(), $invert ); header("Content-Type: image/png"); // Display the output image echo $imagick->getImageBlob(); ?>
Producción:
Referencia: https://www.php.net/manual/en/imagick.opaquepaintimage.php
Publicación traducida automáticamente
Artículo escrito por VigneshKannan3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA