La función ImagickKernel::scale() es una función incorporada en PHP que se usa para escalar la lista de kernel dada por la cantidad dada.
Sintaxis:
void ImagickKernel::scale( float $scale, int $normalizeFlag )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $escala: Especifica la cantidad de escala.
- $normalizeFlag: Especifica el tipo de escala.
Valor devuelto: esta función no devuelve ningún valor.
Los siguientes programas ilustran la función ImagickKernel::scale() en PHP:
Programa 1:
<?php // Create a new imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); $matrix = [ [0, 0, 1], [0, 2, 1], [1, 1, 1], ]; // Create a kernel from built-in matrix $kernel = ImagickKernel::fromMatrix($matrix); echo 'Before scaling:<br>'; print("<pre>".print_r($kernel->getMatrix(), true)."</pre>"); // Scale the kernel $kernel->scale(5, Imagick::NORMALIZE_KERNEL_VALUE); echo 'After scaling:<br>'; print("<pre>".print_r($kernel->getMatrix(), true)."</pre>"); ?>
Producción:
Before scaling: Array ( [0] => Array ( [0] => 0 [1] => 0 [2] => 1 ) [1] => Array ( [0] => 0 [1] => 2 [2] => 1 ) [2] => Array ( [0] => 1 [1] => 1 [2] => 1 ) ) After scaling: Array ( [0] => Array ( [0] => 0 [1] => 0 [2] => 0.71428571428571 ) [1] => Array ( [0] => 0 [1] => 1.4285714285714 [2] => 0.71428571428571 ) [2] => Array ( [0] => 0.71428571428571 [1] => 0.71428571428571 [2] => 0.71428571428571 ) )
Programa 2:
<?php // Create a new imagick object $imagick = new Imagick( 'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); $matrix = [ [1, 2, -3], [4, 5, 6], [7, 8, 9] ]; // Create a kernel from matrix $kernel = ImagickKernel::fromMatrix($matrix); // Scale the kernel $kernel->scale(4, Imagick::NORMALIZE_KERNEL_VALUE); // Add the filter $imagick->filter($kernel); // Show the output $imagick->setImageFormat('png'); header("Content-Type: image/png"); echo $imagick->getImageBlob(); ?>
Producción:
Referencia: https://www.php.net/manual/en/imagickkernel.scale.php