(.NET) LIRE ET ÉCRIRE LES METADONNEES EXIF, IPTC, PNG, GIF (FORMAT TIFF, JPEG, P

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 - 4 août 2006 à 22:38
 JojoBernard - 20 oct. 2015 à 20:55
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/38910-net-lire-et-ecrire-les-metadonnees-exif-iptc-png-gif-format-tiff-jpeg-png-gif-bmp-en-vb-net

JojoBernard
20 oct. 2015 à 20:55
Seul programme me permettant de modifier / ajouter la date de prise de vue (exif).
Merci.

Dommage que je ne connais pas ce langage, j'aurais bien fait une fonction qui récupère la date de modification (dans les propriétés de l'image) pour la mettre sur la date de prise de vue (exif)
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
8 mai 2011 à 14:48
EmmelineDUEZ Messages postés 2 Date d'inscription samedi 7 mai 2011 Statut Membre Dernière intervention 7 mai 2011
7 mai 2011 à 16:46
Bonjour,

Je débute en VB et je voudrais juste récupérer la date de prise de vue.
Comment écrire la fonction suivante :

private function DatePriseDeVue (sCheminComplet as String) as Date
--- code ---
DatePriseDeVue = ---
end function

Merci pour votre aide.
Cordialement,
Emmeline.
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
21 févr. 2009 à 23:09
Salut,

Sur les proprietes des images sont maintenant gerees dans la classe dotnet image

http://www.codeproject.com/KB/graphics/EXIF_tag_Editor.aspx

----------------------------------------------
Extrait de ce site (modification de la date 0x9003 DateTimeOriginal)
Encoding _Encoding = Encoding.UTF8;
Image theImage = new Bitmap(m_currImageFileTemp);
PropertyItem propItem36867 = theImage.GetPropertyItem(36867);

propItem36867.Value = _Encoding.GetBytes(m_textPropertyValue.Text + '\0');
theImage.SetPropertyItem(propItem36867);
theImage.Save(m_currImageFile);
foxvivi Messages postés 4 Date d'inscription jeudi 15 décembre 2005 Statut Membre Dernière intervention 20 décembre 2006
20 déc. 2006 à 17:31
Re,

J'ai temporairement regler le probleme en faisant un try catch dans la methode GetDataFormatted de la class CIPTCTag. Mais je pense qu'on peu faire beaucoup que ma bidouille. Sinon moi j'utilise Fotostation pro, et l'on peu rajouter des champs personnalisés, donc est il possible de pouvoir les lire comme autre champs ?

Merci d'avance pour ta réponse ShareVB et merci encore pour ces class tres pratiques.
foxvivi Messages postés 4 Date d'inscription jeudi 15 décembre 2005 Statut Membre Dernière intervention 20 décembre 2006
20 déc. 2006 à 15:58
Bonjour,

Dabord, bravo pour le travail effecuter, par contre lors qu'une photo à des infos (IPTC), impossible de les afficher,il y a une exception non géer. voici le message : "La résolution de surcharge a échoué, car aucun 'GetDataFormatted' accessible n'accepte ce nombre d'arguments." à la ligne 104.

Merci d'avance pour la modif.
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
19 déc. 2006 à 19:27
salut,

merci...ca devrait être corrigé...

ShareVB
Atmanjeck Messages postés 1 Date d'inscription vendredi 15 décembre 2006 Statut Membre Dernière intervention 15 décembre 2006
15 déc. 2006 à 17:20
Bons après-midi,
Félicitations et merci pour ce travail superbe. Ai un problème, en frmIPTC.vb, fillInfoIPTC, la ligne str_Renamed = m_IPTC.Tags.Item(x).GetDataFormatted(ten, tfr) il donne une erreur "Overload resolution failed because no accessible 'GetDataFormatted 'accepts this number of arguments." GetDataFormatted paraît ne pas exister.

Merci et pardon pour ecrire le française tres mal...
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
6 août 2006 à 12:21
salut,

je précise quand même que les commentaires d'entêtes de méthodes (et autres) sont un peu foireux parce qu'il vienne de la première version VB6 procédural qui je j'ai modifiée en objet puis en VB.Net...bref, les paramètres ont un peu changé...

pour s'y retrouver :
-> il y a les cinq classes de fichiers gérés CBMP, CGIF, CJPEG, CPNG et CTIFF
-> toutes les classes (à peu près) dérivent de CEndianRW (classe de lecture écriture de données Little Endian ou Big Endian
-> pour PNG, on a les classes CzTXt, CtEXt, CiTXt qui dérivent de CTextChunk (infos textuelles) et CpHYS, CtIME et CIHDR (qui représente d'autres infos intéressantes). Toutes ces classes dérivent de CChunk parce que ceux sont des chunks PNG...
-> pour GIF, il y a CGIFExtension qui représente une extension dans un fichier GIF
-> pour TIFF et JPEG, il contiennent un membre CExif et CIPTC. Pour CJPEG, il contient un CJFIF et un CJPEGComment et une liste de CMarker...
-> pour EXIF, les classes CExifJPEG et CExifTIFF représentent les données EXIF suivant le type de fichier (les entêtes sont différentes). Elles dérivent de CExif (qui contient toutes les méthodes de manipulation de EXIF sous sa forme Générale.
--> CExif contient un à plusieurs CIFD (avec différents noms) qui contiennent des dossiers CExifDirEnt qui contiennent les tags et les informations EXIF.
--> La classe CMakerNote hérite de CIFD car en général il s'agit d'une forme particulière d'IFD contenu dans les informations d'un tag
-> Enfin, la classe CImage est une classe générale qui instancie le bon type de fichier et renvoie la classe en question (CJPEG...) dans ImageProps...

Je sais que ca ne doit pas être beaucoup plus clair...mais bon...

Références : www.exif.org et www.iptc.org...

ShareVB
pymaster Messages postés 74 Date d'inscription vendredi 14 juillet 2006 Statut Membre Dernière intervention 14 août 2006
5 août 2006 à 04:43
Génial,

C'est exactement ce que je cherchais !

Par contre c'est pas super évident de se retrouver la dedan

9/10 :) et encore merci

PY
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
4 août 2006 à 22:38
Ah...enfin une source vraiment interessant depuis le début des grandes vacances :)
Merci pour les commentaires sans euh je m'y serais pas retrouver je pense.
Excellente source +1
Rejoignez-nous