La función Imagick::setInterlaceScheme() es una función incorporada en PHP que se usa para establecer el esquema entrelazado que luego se usa en la compresión de imágenes. Hay diferentes esquemas de entrelazado disponibles, como se indica a continuación, que se pueden usar para lograr la compresión.
Sintaxis:
bool Imagick::setInterlaceScheme( int $interlace_scheme )
Parámetros: esta función acepta un solo parámetro $interlace_scheme que contiene el valor entero correspondiente a una de las constantes INTERLACE .
La lista de todas las constantes INTERLACE se proporciona a continuación:
- imagick::INTERLACE_UNDEFINED (0)
- imagick::INTERLACE_NO (1)
- imagick::INTERLACE_LINE (2)
- imagick::INTERLACE_PLANE (3)
- imagick::INTERLACE_PARTITION (4)
- imagick::INTERLACE_GIF (5)
- imagick::INTERLACE_JPEG (6)
- imagick::INTERLACE_PNG (7)
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 Imagick::setInterlaceScheme() en PHP:
Programa 1:
<?php // Create a new imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); // Set the interlace scheme $imagick->setInterlaceScheme(Imagick::INTERLACE_PLANE); // Get the interlace scheme $interlace_scheme = $imagick->getInterlaceScheme(); echo $interlace_scheme; ?>
Producción:
3
Programa 2:
<?php // Create a new imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); // Set the interlace scheme to be used in // compression to imagick::INTERLACE_LINE $imagick->setInterlaceScheme(Imagick::INTERLACE_LINE); // Set the quality of the compression $imagick->setImageCompressionQuality(1); // Show the output $imagick->setImageFormat('jpg'); header("Content-Type: image/jpg"); echo $imagick->getImageBlob(); ?>
Producción:
Referencia: https://www.php.net/manual/en/imagick.setinterlacescheme.php