PHP | Función ImagickKernel separa()

La función ImagickKernel::separate() es una función incorporada en PHP que se usa para separar un conjunto vinculado de kernels y devuelve una array de ImagickKernels. Esta función se utiliza para contar los núcleos de un objeto o ver los núcleos de un objeto.

Sintaxis:

array ImagickKernel::separate( void )

Parámetros: Esta función no acepta ningún parámetro.

Valor de retorno: esta función devuelve un valor de array que contiene los ImagickKernels.

Los siguientes programas ilustran la función ImagickKernel::separate() en PHP:

Programa 1: este programa cuenta todos los núcleos en un ImagickKernel.

<?php
  
// Create a new imagick object
$imagick = new Imagick(
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png');
  
$matrix1 = [
    [-1, -1, -1],
    [4, 4, 4],
    [1, 1, 1],
];
  
$matrix2 = [
    [-1, 0, 0],
    [0, 0, 1],
    [-1, 0, 1],
];
  
$matrix3 = [
    [-1, 1, 0],
    [0, 0, 1],
    [-1, 0, 1],
];
  
$matrix4 = [
    [0, 1, 0],
    [0, 0, 1],
    [-1, 0, 1],
];
  
// Create ImagickKernel objects from matrices
$kernel1 = ImagickKernel::fromMatrix($matrix1);
$kernel2 = ImagickKernel::fromMatrix($matrix2);
$kernel3 = ImagickKernel::fromMatrix($matrix3);
$kernel4 = ImagickKernel::fromMatrix($matrix4);
  
// Add the kernels
$kernel1->addKernel($kernel2);
$kernel1->addKernel($kernel3);
$kernel1->addKernel($kernel4);
  
$kernelList = $kernel1->separate();
  
echo 'Total number of attached kernels are: ';
echo count($kernelList);
?>

Producción:

Total number of attached kernels are: 4

Programa 2 (Obtener todo ImagickKernel en un objeto):

<?php
  
// Create a new imagick object
$imagick = new Imagick(
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png');
  
$matrix1 = [
    [-1, -1, -1],
    [4, 4, 4],
    [1, 1, 1],
];
  
$matrix2 = [
    [-1, 0, 0],
    [0, 0, 1],
    [-1, 0, 1],
];
  
// Create ImagickKernel objects from matrices
$kernel1 = ImagickKernel::fromMatrix($matrix1);
$kernel2 = ImagickKernel::fromMatrix($matrix2);
  
// Add the kernel
$kernel1->addKernel($kernel2);
  
$kernelList = $kernel1->separate();
  
echo 'All the kernels are: ';
print("<pre>".print_r($kernelList, true)."</pre>");
?>

Producción:

All the kernels are:
Array
(
    [0] => ImagickKernel Object
        (
            [0] => Array
                (
                    [0] => Array
                        (
                            [0] => -1
                            [1] => -1
                            [2] => -1
                        )

                    [1] => Array
                        (
                            [0] => 4
                            [1] => 4
                            [2] => 4
                        )

                    [2] => Array
                        (
                            [0] => 1
                            [1] => 1
                            [2] => 1
                        )

                )

        )

    [1] => ImagickKernel Object
        (
            [0] => Array
                (
                    [0] => Array
                        (
                            [0] => -1
                            [1] => 0
                            [2] => 0
                        )

                    [1] => Array
                        (
                            [0] => 0
                            [1] => 0
                            [2] => 1
                        )

                    [2] => Array
                        (
                            [0] => -1
                            [1] => 0
                            [2] => 1
                        )

                )

        )

)

Referencia: https://www.php.net/manual/en/imagickkernel.separate.php

Publicación traducida automáticamente

Artículo escrito por gurrrung y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *