Pb qualité d'affichage avec LoadPicture

Signaler
Messages postés
10
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
10 mars 2011
-
Messages postés
10
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
10 mars 2011
-
Bonjour,
L'affichage de certaine images jpeg de bonne taille (12 Mpix ou plus) avec LoadPicture produit un affichage de mauvaise qualité (points saturés) alors que les outils MSPaint, MS Photo Editor, Gimp, etc. n'ont pas ce problème. Est-ce parce que LoadPicture ne fait pas appel à jpeglib.dll ? Comment obtenir un affichage parfait, ou au moins équivalent aux appli classiques ?
Cordialement

8 réponses

Messages postés
14760
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 janvier 2021
151
Bonjour,

VB6 est assez ancien, bien que je ne vois pas l'origine de ton problème, il se peut que VB6 soit à sa limite, surtout si l'image est grande.

Mon site
Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
9
Bonjour,

Avec de grandes images, j'ai eu des problèmes de temps d'affichage (10/15 secondes pour une photo), pas de qualité d'affichage.

Pour m'en sortir j'ai utilisé GDI+ fourni gratuitement avec Windows à partir de XP.


Calade
Messages postés
10
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
10 mars 2011

Bonjour,
L'image Jpeg fait environ 4000x3000 et codée en DCT de base (même pas en progressif). J'ai fait un test ce WE en C# avec "this.pictureBox1.Image = Image.FromFile(MyFile);" et j'ai le même problème de qualité d'affichage (pixels saturés : les cheveux ont l'air de crin de cheval, les traits d'une voiture sont hachurés, etc.). Il semble que la décompression échoue. Cela se produit sur certaines photos que je n'ai pas encore réussi à caractériser. J'envisage l'utilisation de libjpeg.dll, puisque Gimp l'utilise est que l'affichage est impeccable, mais c'est nettement moins simple. Quelqu'un aurait-il une autre idée ?
Cordialement
Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
9
Bonjour,

Je ne suis pas spécialiste en photo (et de loin), mais juste par acquis de conscience, as-tu fait un essai sur un autre micro ?

Et sous quel OS tournes-tu ?

Calade
Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
9
Pardon pour ce 2ème post, mais je viens juste de revoir le titre du tien,

Tu travailles bien sous VB6 et NON sous .NET ?


Calade
Messages postés
10
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
10 mars 2011

Rebonjour,
J'ai essayé sur mon HP Pavilion dv7-1070ef sous Vista, sur un DELL Inspiron sous Windows 7, en VBA, VB6 et C# avec Visual studio 2008, c'est toujours le même pb. Je pense que tous font appel à une dll qui a un bug. Comment savoir ?
Cordialement
Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
9
Est-il possible d'avoir ta photo pour faire des essais ?

Si oui, tu peux l'envoyer en MP si tu veux.


Calade
Messages postés
10
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
10 mars 2011

Bonjour,
J'ai effectué plusieurs essais, et suis parvenu à la conclusion suivante. Le LoadPicture n'est pas en cause car le SavePicture produit une image Bmp parfaite. C'est donc le redimentionnement avec le PictureSizeModeZoom dans le UserForm1.Image1.Picture qui ne fait pas d'interpolation, pour une question de performance certainement. J'ai pu vérifier cela car un PictureSizeModeClip est parfait.
Je recherche donc maintenant une autre solution pour éviter de coder un interpolateur, très simple à faire, mais coûteux en temps. Quelqu'un aurait-il une autre idée ?
Cordialement