(No version information available, might only be in Git)
Imagick::importImagePixels — Importe des pixels dans une image
$x
, int $y
, int $width
, int $height
, string $map
, int $storage
, array $pixels
) : bool
Importe des pixels depuis un tableau dans une image.
Le paramètre map vaut générallement 'RGB'.
Cette méthode impose les contraintes suivantes pour les paramètres : le nombre de pixels
du tableau doit correspondre à la longueur width x height x
de la carte.
Cette méthode n'est disponible que si Imagick a été compilé avec ImageMagick version 6.4.5 ou supérieur.
xLa position en X de l'image.
yLa position en Y de l'image.
widthLa largeur de l'image.
heightLa hauteur de l'image.
mapLa carte de l'ordre des pixels, sous la forme d'une chaîne de caractères. Par exemple RGB. La valeur peut être une combinaison ou un ordre de R = rouge, G = vert, B = bleu, A = alpha (0 correspond à transparent), O = opacité (0 correspond à opaque), C = cyan, Y = jaune, M = magenta, K = noir, I = intensité (pour les niveaux de gris), P = pad.
storageLa méthode de stockage des pixels. Référez-vous à la liste des constantes de pixels.
pixelsLe tableau de pixels.
Retourne TRUE en cas de succès.
Lance une exception ImagickException si une erreur survient.
Exemple #1 Exemple avec Imagick::importImagePixels()
<?php
/* Génère un tableau de pixels. 2000 pixels par bande de couleurs */
$count = 2000 * 3;
$pixels =
array_merge(array_pad(array(), $count, 0),
array_pad(array(), $count, 255),
array_pad(array(), $count, 0),
array_pad(array(), $count, 255),
array_pad(array(), $count, 0));
/* Largeur et hauteur. L'espace correspond aux pixels, divisés
par 3. 3 provient de 'RGB', 3 valeurs par pixel */
$width = $height = pow((count($pixels) / 3), 0.5);
/* Crée une image vide */
$im = new Imagick();
$im->newImage($width, $height, 'gray');
/* Importe les pixels dans l'image.
width * height * strlen("RGB") doit correspondre à count($pixels) */
$im->importImagePixels(0, 0, $width, $height, "RGB", Imagick::PIXEL_CHAR, $pixels);
/* Affiche l'image sous la forme d'une image jpeg */
$im->setImageFormat('jpg');
header("Content-Type: image/jpg");
echo $im;
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :