Bonjour,

Je cherche à effectuer par un traitement de masse en VBSript des modification d'images.
  • Supperposer 3 à 6 images -> ça marche
  • Faire pivoter l'image -> pas encore cherché
  • Inscrire dans l'Exif des informations -> ça marche pas
  • Inscruster sur l'image une information -> pas encore cherché


Pour ceci je me suis aidé d'un tutoriel d'ici : silkyroad.developpez.com -> VBA -> WindowsImageAcquisition

Voici le code

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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
 
 
	Dim MonChemin
	MonChemin = AfficheRepCourant()
			Function AfficheRepCourant()
				Dim path
				path = WScript.ScriptFullName
				AfficheRepCourant = Left(path, InStrRev(path, "\"))
			End Function
 
	Dim Image01, Image0102, Image03, Image04, Image05, ImageFinal
	Image01 = (MonChemin & "ImageCombinee.jpg")
	ImageFinal = (MonChemin & "ImageCombineeExif.jpg")
 
'	Sub creation_TAG_TITRE_copieImage()
    Dim Img 	'	As ImageFile
    Dim IP 		'	As ImageProcess
    Dim v 		'	As Vector
    Dim i 		'	As Integer
 
    ' Création conteneur pour l'image à manipuler
		Set Img = CreateObject("WIA.imageFile")
    ' creation du gestionnaire de filtre
		Set IP = CreateObject("WIA.imageProcess")
    ' création d'un vecteur
    '(Un vecteur permet de créer une collection pour des valeurs du même type.) 
		Set v = CreateObject("WIA.Vector")
    ' chargement de l'image
		Img.LoadFile Image01
 
	' définit le filtre pour gérer l'EXIF
		IP.Filters.Add IP.FilterInfos("Exif").FilterID
		IP.Filters(1).Properties("ID") = 40091
			' 40091  Titre
			' 40092  Commentaire
			' 40093  Auteur
			' 40094  Mots clés  
		' spécifie le type de valeur pour le propriété du filtre:
		' constante VectorOfBytesImagePropertyType = 1101 (la valeur est un vecteur)
		IP.Filters(1).Properties("Type") = VectorOfBytesImagePropertyType
		' voir le fichier d'aide fourni avec la librairie WIA pour 
		' obtenir la liste des constantes disponibles
    ' stocke une chaine de caractères dans le vecteur
		v.SetFromString "Test de TAG 'TITRE' : utilisation de WIA v2.0"
    ' applique au filtre le contenu du vecteur  
		IP.Filters(1).Properties("Value") = v
 
 
	' définit le filtre pour gérer l'EXIF
		IP.Filters.Add IP.FilterInfos("Exif").FilterID
		IP.Filters(2).Properties("ID") = 40092
		IP.Filters(2).Properties("Type") = VectorOfBytesImagePropertyType
		v.SetFromString "Test de TAG 'Commentaire' : utilisation de WIA v2.0"
		IP.Filters(2).Properties("Value") = v
 
	' définit le filtre pour gérer l'EXIF
		IP.Filters.Add IP.FilterInfos("Exif").FilterID
		IP.Filters(3).Properties("ID") = 40093
		IP.Filters(3).Properties("Type") = VectorOfBytesImagePropertyType
		v.SetFromString "Test de TAG 'Auteur' : utilisation de WIA v2.0"
		IP.Filters(3).Properties("Value") = v
 
 
 
	' application du filtre dans l'image
	Set Img = IP.Apply(Img)
 
    ' sauvegarde de l'image
    Img.SaveFile ImageFinal
' End Sub

Et mon message d'erreur et le suivant :
Nom : Capture.PNG
Affichages : 526
Taille : 12,0 Ko

Ce qui me fais penser que j'ai rater quelque chose dans les commentaire de Silkyroad.
IP.Filters(1).Properties("ID") = 40091
' 40091 Titre
' 40092 Commentaire
' 40093 Auteur
' 40094 Mots clés
' spécifie le type de valeur pour le propriété du filtre:
' constante VectorOfBytesImagePropertyType = 1101 (la valeur est un vecteur)
IP.Filters(1).Properties("Type") = VectorOfBytesImagePropertyType
Et là je bute un peux...


Quelqu'un peux m'aider a trouver c'est etat qui m'echape?

Merci D'avance.