Re,
est-ce que ça résoud ton problème nabil ?? désolé, je n'ai pas trop eu le temps d'étudier cette bibliothèque
Re,
est-ce que ça résoud ton problème nabil ?? désolé, je n'ai pas trop eu le temps d'étudier cette bibliothèque
@ bientôt
:: Ressources VB : Cours | FAQ | Sources et surtout La recherche sur le forum
:: Pour un forum plus propre ...
ca résoud le problème ridan mais je n'arrive pas à tirer un tout petit bout de code qui me fera l'essentiel j'en ai troujours trouvé des erreurs.
Autre chose le code de la dll est aussi disponible , comment puis-je faire de facon à intégrer mon besoin de ce code dans mon projet (je m'explique :comment puis -je procéder pour utiliser seulement les module de la dll et non pas l'ajouter comme réference dan smon projet )
Il ne faut jamais désesperer, il y a toujours une solution.
Salut,
je viens me méler un peu de vos affaires. J'ai peut-être une piste qui peut t'aider
Je ne connais pas assez bien photoshop pour te conseiller sur ses scripts par contre, il y a un programme que tu trouveras sur télécharger.com qui s'apelle Image Magick et qui est très puissant et simple.
Le principe est très simple. Tu peux récupérer les dimensions des fichiers images puis créer un fichier .bat qui comportera les lignes de commande dos qui lanceront les fonctionnalités de Image Magick :
Bibliothèques requises : OLE Automation et Microsoft scipting Runtime
-------------------------------------------------------------------------------
-------------------------------------------------------------------------
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 Dim hauteur as long Dim largeur as Long Dim fle as Scripting.file Dim fld as Scripting.folder Dim image as stdole.stdPicture Dim fso as Scripting.FileSystemObject Dim Ligne_cde as String Dim Image_Source as string Dim Image_Destination as String Set fso = New Scripting.FileSystem.Object Set Image = New stdol.stdPicture 'Spécifie le dossier contenant les images Set fld = fso.getfolder ("C:\PICTURES\") 'Crée le fichier .bat Open "C:\bidule.bat" For Outpur #1 'Passe en revue tous les fichiers JPEG du dossier '(marche avec la plupart des types image) for each fle in fld.Files If Right(fle.name) = "jpg" Then Hauteur = Image.height / 26.46 Largeur = Image.width / 26.46 Image_Source = fle 'Redimensionne que certaines images If Hauteur >= 1200 then Image_Destination = "C:\NEW_PICTURES\" & fle.name Ligne_cde = "Convert.exe -resize 600x800 " & chr(34) & Image_Source & chr(34) & " " & chr(34) & Image_Destination & chr(34) 'Ajoute la ligne dans Bidule print #1, Ligne_cde End If end if Next
Une fois le code le Public Sub fini, tu peux lancer le "Bidule.bat" manuellement ou automatiquement par un Shell. Il faut que Image Magick soit installé
Dis-moi s'il y a une erreur de syntaxe. Je n'ai pas eu le temps de le tester et j'ai écris le code directement dans ce message. J'espère que je t'ai aidé[/code]
bon bref,j'en ai trouvé enfin la solution
on met ce code dans une form contenant un bouton:
puis cette ligne de code dan sun module standard :
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 Private m_image As GDIPBitmap Private Sub Command1_Click() Dim sFilter As String Dim i As Long Dim source, destination As String source = "c:\test.jpg" destination = "c:\destination.BMP" Set m_image = New GDIPBitmap m_image.Image.FromFile source If Not (m_image Is Nothing) Then Dim sFIle As String Dim iFilterIndex As Long Dim cCodec As GDIPImageCodec Dim iEncoder As Long Set cCodec = g_cEncoders.EncoderForExtension("BMP") m_image.SetResolution 600, 600 m_image.Image.Save destination, cCodec.CodecCLSID End If End Sub Private Sub Form_Load() If GDIPlusCreate() Then Set g_cEncoders = New GDIPImageEncoderList End If End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) If Not m_image Is Nothing Then m_image.Dispose End If GDIPlusDispose End Sub
il ne faut pas oublié de télécharger les librairie GDI+ et la DLL GDIPlusWrapper.dll
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Option Explicit Public g_cEncoders As GDIPImageEncoderList
Cordinalement .
Nabil
Il ne faut jamais désesperer, il y a toujours une solution.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager