Présentation :
Le programme ci-dessous permet d’assembler des images pour en créer une plus grande.
Le code Processing :
//////////////////////////////////////////////////////////////////
/*
Assemblage d'images
Version de Processing utilisée : 3.5.2
Important :
---------
Les noms des fichiers images à assembler sont ici du type :
image-0001.png, image-0002.png, etc.
http://3615.entropie.org
*/
//////////////////////////////////////////////////////////////////
// Paramètres à adapter
String extension = ".png"; // Extension des images
int largeurImage = 200; // Largeur d'une image
int hauteurImage = 100; // Hauteur d'une image
int nbImagesX = 3; // Nombre d'images à placer en largeur
int nbImagesY = 2; // Nombre d'images à placer en hauteur
int marge = 10; // Marge entre les images
int couleurMarge = 0; // Couleur de la marge
// Variables
int width = largeurImage*nbImagesX + marge*(nbImagesX+1);
int height = hauteurImage*nbImagesY + marge*(nbImagesY+1);
int nbImages = nbImagesX * nbImagesY; // Nombre total d'images
PImage img[ ]= new PImage[nbImages]; // Tableau d'images
int indexImage = 0; // Position de l'image dans le tableau
float x,y; // Coin supérieur gauche de l'image
//////////////////////////////////////////////////////////////////
void settings() {
size(width, height);
}
//////////////////////////////////////////////////////////////////
void setup() {
for (int i=0; i<nbImages; i++) {
// Le nom du fichier est composé de 4 chiffres + l'extension
String nomFichier = "image-"+nf(i+1,4)+extension;
img[i] = loadImage(nomFichier);
}
x = marge;
y = marge;
background(couleurMarge);
}
//////////////////////////////////////////////////////////////////
void draw() {
if (indexImage < nbImages) {
image(img[indexImage], x, y, largeurImage, hauteurImage);
indexImage++;
x = x + largeurImage + marge;
if (x >= width) {
x = marge;
y = y + hauteurImage + marge;
}
}
else { save("assemblage.png"); }
}
//////////////////////////////////////////////////////////////////
void keyPressed() {
if (key == ESC) {
exit();
}
}
//////////////////////////////////////////////////////////////////