(No version information available, might only be in Git)
Imagick::importImagePixels — Importa los píxeles de una imagen
$x
, int $y
, int $width
, int $height
, string $map
, int $storage
, array $pixels
) : bool
Importa los píxeles desde una matriz a un imagen. El mapa map normalmete es
'RGB'. Este método impone las siguientes limitaciones para los parámetros: la cantidad de píxeles
en la matriz debe coincidir con width x height x
longitud del mapa.
Este método está disponible si Imagick ha sido compilado con la versión 6.4.5 o superior de ImageMagick.
xLa posición x de la imagen
yLa posición y de la imagen
widthEl ancho de la imagen
heightEl alto de la imagen
mapMapa de píxeles ordenados, como una cadena. Esto puede ser por ejemplo RGB. El valor puede ser cualquier combinación u orden de R = rojo, G = verde, B = azul, A = alfa (0 es transparente), O = opacidad (0 es opaco), C = cian, Y = amarillo, M = magenta, K = negro, I = intensidad (para escala de grises), P = relleno.
storageEl método de almacenamiento de los píxeles. Consulte esta lista de constantes de píxel.
pixelsLa matriz de píxeles
Devuelve TRUE en caso de éxito.
Lanza ImagickException en caso de error.
Ejemplo #1 Ejemplo deImagick::importImagePixels()
<?php
/* Generar una matriz de píxeles. 2000 píxeles por raya de color */
$cuenta = 2000 * 3;
$píxeles =
array_merge(array_pad(array(), $cuenta, 0),
array_pad(array(), $cuenta, 255),
array_pad(array(), $cuenta, 0),
array_pad(array(), $cuenta, 255),
array_pad(array(), $cuenta, 0));
/* Ancho y alto. El área es la cantidad de píxeles dividido
por tres. Tres viene de 'RGB', tres valores por píxel */
$ancho = $alto = pow((count($píxeles) / 3), 0.5);
/* Crear una imagen vacía */
$im = new Imagick();
$im->newImage($ancho, $alto, 'gray');
/* Importar los píxeles a la imagen.
ancho * alto * strlen("RGB") debe coincidir con count($píxeles) */
$im->importImagePixels(0, 0, $ancho, $alto, "RGB", Imagick::PIXEL_CHAR, $píxeles);
/* Imprimir como una imagen jpeg */
$im->setImageFormat('jpg');
header("Content-Type: image/jpg");
echo $im;
?>
El resultado del ejemplo sería algo similar a: