Sauvegarder des métadonnées

LeGnuff Messages postés 16 Date d'inscription samedi 10 avril 2004 Statut Membre Dernière intervention 22 octobre 2004 - 8 juil. 2004 à 19:37
Yannooo Messages postés 1 Date d'inscription mardi 4 janvier 2005 Statut Membre Dernière intervention 4 janvier 2005 - 4 janv. 2005 à 22:02
bonjour à tous

encore un pb en c#...

la classe Image contient un descripteur de métadonnées des images accessible avec PropertyItem
je n'ai aucun pb pour lire ces métadonnées d'une image
mais en revanche comment faire pour sauvegarder ces métadonnées ?
en effet la méthode Image.Save ne prends pas en compte les métadonnées contenues dans l'Image
connaissez-vous un moyen de conserver le métadonnées lors d'un réenregistrement d'une photo

en d'autres termes : existe-t-il un moyen de modifier une photo sans pour autant altérer ses métadonnées ?

veuillez agréer l'expression de la sympathie de me le sentiment de les meilleurs

2 réponses

dyfred Messages postés 45 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 4 novembre 2013
4 janv. 2005 à 11:37
Salut,

Mon problème, en ce qui me concerne, est de récupérer les métadonnées d'une image. N'étant pas un expert en C#, pourrais-tu me donner quelques informations en ce qui concerne ton code permettant de récupérer ces métadonnées ?
Merci d'avance !

-- DyFred -------------------------------------- Carpe Diem ---------------------
0
Yannooo Messages postés 1 Date d'inscription mardi 4 janvier 2005 Statut Membre Dernière intervention 4 janvier 2005
4 janv. 2005 à 22:02
Salut,



Pour récupérer les métadonnées d'une Image :



la liste des données que l'on peut extraire d'un photo :

http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html



par exemple la date c'est la propriété 0x9003

PropertyItem propItem = image.GetPropertyItem(0x9003);



par contre les infos de cette propriété sont encodées donc on les décode avec un System.Text.ASCIIEncoding ;)



System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();

string d = encoding.GetString(propItem.Value, 0, propItem.Len - 1);





les infos présentes dans l'image sont toutes présentes dans le tableau image.PropertyIdList

la longueur de ce tableau peut être plus ou moins grande, suivant l'image
0
Rejoignez-nous