Bonjour à tous. Ce code relevé de la fac fonctionne très bien dès lors qu'on l'utilise en l'état les valeurs peuvent être remplacées par des entiers mais quel type de variable faut utiliser si on veut remplacer les chemins et les fichiers par quelque chose du type string ou char.
Je sais que je dois paraître ridicule mais c'est la première fois que j'ai besoin de ce type de code.
Toute réponse sera la bienvenue.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// redimensionner Image 
 
Variant vMSWIAImageProcess, vMSWIAImageFile; 
 
// Création conteneur pour l'image à manipuler 
vMSWIAImageFile = Variant::CreateObject("WIA.ImageFile"); 
// Création du gestionnaire de filtre 
vMSWIAImageProcess = Variant::CreateObject("WIA.ImageProcess"); 
// Chargement de l'image dans le conteneur 
vMSWIAImageFile.OleFunction("LoadFile", "C:\\Documents and Settings\\toto\\Mes documents\\Mes images\\imageOrigine.bmp"); 
// Ajoute le filtre pour redimensionner l'image (Scale) 
vMSWIAImageProcess.OlePropertyGet("Filters").OleProcedure("Add", (vMSWIAImageProcess.OlePropertyGet("FilterInfos", "Scale").OlePropertyGet("FilterID"))); 
// Définit la largeur maxi pour le redimensionnement 
vMSWIAImageProcess.OlePropertyGet("Filters", 1).OlePropertySet("Properties", "MaximumWidth", 90); 
// Définit la hauteur maxi pour le redimensionnement 
vMSWIAImageProcess.OlePropertyGet("Filters", 1).OlePropertySet("Properties", "MaximumHeight", 90); 
// remarque : 
// Les proportions sont conservées. Le filtre prend en compte 
// les ratios et adapte la taille pour ne pas dépasser les valeurs maxi définies. 
// Application du filtre à l'image 
vMSWIAImageFile = vMSWIAImageProcess.OleFunction("Apply", vMSWIAImageFile); 
// Enregistre l'image redimensionnée 
vMSWIAImageFile.OleFunction("SaveFile", "C:\\Documents and Settings\\toto\\Mes documents\\Mes images\\imageFinale.bmp");