SAVEPICTURE() AU FORMAT PNG, JPG, TIF ETC...

Signaler
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
-
Messages postés
46
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
11 juin 2018
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52039-savepicture-au-format-png-jpg-tif-etc

Messages postés
46
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
11 juin 2018

Bonjour EB
Les fichiers PNG créés ne sont pas lisibles par les programmes comme PhotoSuite.et Corel PaintShop pro plante lamentablement.
Seulement par l'Explorateur et Office Picturemanager de Windows (W7-64)
J'ai essayé de modifier le code............
Messages postés
14863
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
30 mai 2020
412 >
Messages postés
46
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
11 juin 2018

Bonsoir 2 codes sources différents, 2 commentaires identiques...
Messages postés
46
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
11 juin 2018
>
Messages postés
14863
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
30 mai 2020

oui !! car ces 2 sources de EB utilisent le même code pour les PNG
Sauvegarder une image en PNG (55022)
SavePicture (52039)
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
8
C'est marrant Manque trop de compétence pour en faire un membre utile

:)
Messages postés
17
Date d'inscription
lundi 23 mars 2009
Statut
Membre
Dernière intervention
13 mai 2013

C'est de la merde manque trop de fichiers pour en faire la demo
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
Rectification, je viens de m'apercevoir que le filtre de PictureSave n'est pas bon non plus, si on choisi All tout les fichier sont afficher y compris ceux qui ne sont pas des fichiers image.
La syntaxe conforme devrait être...

cdg.Filter = ("All picture(*.bmp ; *.jpg ; *.png),*.bmp,*.jpg,*.png")
Je n'ai fait que pour trois filtres, à vous de compléter.
A+
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
Bonjour à tous,
Je fais remonter ce topic parce que j'ai deux petites rectifications à faire.
1°) J'ai changer de PC et c'est probablement comme dis par Jacques Antoine, le codage des fichiers ne fonctionne plus du tout malgré tout mes essais.
Mais ce n'est pas fort important j'ai trouver un snippet qui code tout les Png, bmp et jpg sans aucun problème, en fait ce sont les seul qui m’intéresse.
Pour ceux que ça intéresse : http://www.codyx.org/snippet_conversion-images-bmp-jpg-png-avec-gdi_160.aspx
par Gobillot.
2°)J'emploi quand même la classe CommonDialog, (pourquoi réinventer la roue) mais il y a un petit bug dans la déclaration du filtre.
Il faut remplacer le filtre dans PictureLoad comme il est défini dans PictureSave, sinon il n'y a que les bmp.
A+
Messages postés
46
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
11 juin 2018

Bonjour EB,
Pas de problèmes....tout fonctionne.
J'ai intégré VBPicEncoder.dll dans un de mes softs qui traite les EXIF.
Après enregistrement en JPG, impossible de créer ou de lire EXIF.
Avant j'utilisais bien IJL11.dll mais avec mIJL.bas et les JPG
produits supportaient EXIF.
J'utilise AisExif.dll sous license (Gratuit 30 jours):
http://www.watermarker.com/exif-iptc-gps/
En comparant mIJL.bas et JPGEncoder.cls, j'ai pas trouvé !
mIJL.bas utilise CDIBsection.cls ???
A+
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
Bonjour,
Ce que je cherchais depuis...
Malgré tout, j'ai eu quelques problème pour faire fonctionner cette source et je les expliques pour éventuellement d'autre utilisateur.
Au premier lancement, la dll ijl11 introuvable, j'ai suivis la remarque plus haut mais pas de résultat.
Etant sous Vista j'ai voulu enrégistré la dll avec RegSvr32, mais l'erreur "Point entrée introuvable" est retournée.
Idem si je met la dll en référence.
Enfin, j'ai trouvé, il faut ouvrir VB6 en tant qu'administrateur, charger le projet, et enfin ajouter ChDir App.path
Et Yooups c'est parfait.
Merci pour cette source.
A+
Messages postés
79
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
22 mai 2017

US_30, je pense que c'est lié à l'environnement de VB : très souvent, lorsque j'ai fait un paquet cadeau d'une appli pour la fourguer à un copain, il n'a pas pu l'utiliser, même avec un empaquetage complet, alors que chez moi ça fonctionne. Donc, il y a des choses qui existent sur une bécane et dont VB se sert sans même qu'on le sache et d'autres qui n'existent pas mais qui ne sont pas pour autant incluses dans l'empaquetage, lequel doit supposer qu'elles existent. Comme je ne suis pas sur place pour voir comment se passe l'installation de ces applis, je suis bien incapable de dire s'il y a eu un loup ou pas, ni même de savoir, au moment de l'exécution, où se situe le problème, les copains en question étant généralement des béotiens : pour eux, ça doit marcher tout de suite, sinon ils jettent le machin aux orties. Bref, il n'y a que ceux qui utilisent VB comme développeurs qui peuvent utiliser ce que je ponds, mais même comme ça, il y a des surprises ..........
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

Ceci dit, je n'ai rencontré aucun problème dans les formats... Est-ce un problème isolé ou je suis chanceux ? Je penche pour la première proposition compte tenu que pour seconde, cela me changerais tellement...

Amicalement,
Us.
Messages postés
79
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
22 mai 2017

oups! le doigt il a glissé : c'est chdir et non chrdir qu'il faut placer en première instruction.
Globalement, ça fonctionne mais j'ai toujours le dépassement de capacité pour ico et cur plus un problème de reconnaissance du bmp par paint shop pro qui le refuse. Mais bon, ces 3 formats ne sont plus guère utiles, notamment le bmp, assez goinfre en espace. Je vais donc me satisfaire de 6 options sur 9, ce qui n'est déjà pas si mal, et virer les autres.

Merci pour tout

J.
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
8
Ok donc ce n'est pas un probleme avec les encodeurs mais simplement un probleme de chemin d'acces au dll. Elles sont dans le zip et doivent être placé dans le dossier du .exe.
Lorsque tu executes le programme en mode debug il faut taper la commande "chrdir app.path" pour que VB retrouve les dll sinon c'est l'insultebox assuré.
Messages postés
79
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
22 mai 2017

Mon cher Ebartsoft (comme naguère une truffe de ma connaissance commençait une lettre par : Monsieur Warner Bros ......)

j'ai essayé la modif préconisée et, si dans certains cas, ça marche, dans d'autres il y a plantage. Je reviendrai dessus après avoir indiqué qu'en mode fonctionnement normal (F5 en mode VB), ben je n'ai strictement rien à l'écran et je n'ai pas trouvé de module de démarrage. Bon, il est tôt et je n'ai peut-être pas encore les yeux en face des trous. Oh p de c, je viens seulement de m'aviser qu'il s'agit d'un ensemble constituant une librairie et qu'il ne pouvait donc y avoir le moindre affichage! Je finis de taper et je retourne me coucher.

En mode démo, il y a plus que des problèmes, quel que soit le cas de Direct call only for debug purpose.

1 - avec 1 = 2, les seuls formats lisibles que je puisse obtenir sont png, ico et bmp avec, lors de la première passe et pas aux suivantes, le message ijl11.dll non trouvée : tous les autres formats génèrent des fichiers inutilisables,
2 - avec 1 = 1, les formats corrects obtenus sont bmp, pcx, tga, et gif; le format png génère l'erreur 53 (zlibVB.dll non trouvée), ico et cur génèrent l'erreur 6 (dépassement de capacité), tif et jpg sont inutilisables.

Bonne journée, avec la patate chaude...

J.
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
8
Jacques> il y a des chances pour que ça ne marche pas dans certaines conditions. Dans ce cas change les lignes suivantes :

'Direct call only for debug purpose
131. If (1 = 2) Then

par

'Direct call only for debug purpose
131. If (1 = 1) Then
Messages postés
79
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
22 mai 2017

ave,

je ne vais pas dire si ce logiciel est parfait ou pas : je n'en sais rien, vu que 1) en mode démo je suis planté illico sur l'instruction Call VBPicEncoder.Initialize(VB.Global), jusqu'à ce que je m'avise de passer par l'install.bat du répertoire DLL, et là 2) surprise : ça a l'air de fonctionner sauf qu'il n'y a aucune conversion, le résultat est un bmp, donc je me dis qu'il y a un loup quelque part, que quelque chose m'a échappé et, avant de plonger dans le code pour le désosser et trouver où ça merde, il y a peut-être quelque chose que je dois savoir, une chose à faire ou une connerie à éviter? Sinon, il m'intéresse bougrement, vu que ça fait des années que je me dis que je devrais en pondre l'équivalent, peut-être pas aussi complet, mais entre ce qu'on voudrait faire et ce qu'on fait réellement...
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
12
Bien codée et complète. Que peut-on demander de plus (à part la lecture de fichiers .tif comme l'a dit us_30) ?
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
8
Il faudrait créer les classes de "décodeur" et les lier à LoadPicture(). Dans le principe c'est pareil mais je n'ai pas encore le code pour tous les types de fichier cités plus haut.

A la base il ne devait y avoir que le PNG et puis dans le feu de l'action...
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

Juste une chose, sur cette source parfaite...
On peut enregistrer en TIF, mais on ne peut pas les charger ? C'est dommage pour ses TIF...

Amicalement,
Us.