Imagick::importImagePixels
(No version information available, might only be in SVN)
Imagick::importImagePixels — Importe des pixels dans une image
Description
$x
, int $y
, int $width
, int $height
, string $map
, int $storage
, array $pixels
)
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.
Liste de paramètres
-
x
-
La position en X de l'image.
-
y
-
La position en Y de l'image.
-
width
-
La largeur de l'image.
-
height
-
La hauteur de l'image.
-
map
-
La 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.
-
storage
-
La méthode de stockage des pixels. Référez-vous à la liste des constantes de pixels.
-
pixels
-
Le tableau de pixels.
Valeurs de retour
Returns TRUE
on success.
Erreurs / Exceptions
Lance une exception ImagickException si une erreur survient.
Exemples
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 à :