OVH Cloud OVH Cloud

description du format EXIF

11 réponses
Avatar
Vincent
Bonjour,

Dans un programme que j'ai réalisé, j'ai besoin de lire les données EXIF
d'une photo.
Où trouver la description d'un fichier EXIF en détail ?


Merci

Vincent

1 réponse

1 2
Avatar
Eric Hourant
Comme quoi nous sommes bien d'accord.

Eric

"Emmanuel Thiry" a écrit dans le message de
news:
Bien sûr que le principe est similaire dans les différents langages.
Chacun

choisit en fonction de ses préférences et compétences.
Je trouve le Perl plus agréable à lire mais ça n'engage que moi.
La méthode Perl à néanmoins quelques avantages :
- gratuit
- multiplateforme sans recompilation
- pas d'ActiveX à enregistrer dans le système


"Eric Hourant" a écrit dans le message
de

news:412b3cb9$0$3882$
Emmanuel,

Je ne vois pas très bien la différence entre les 2. Le principe revient
toujours à charger une image dans un object. Si le chargement est
correct,


on affiche une ou plusieurs propriétés.

lOk :=iExif:ReadExifInfo("TEMP.JPG") // charge l'image dans
l'object

iExif
IF lOk // si le fichier est correct
? iEXIF:GetParam("FocalLength") // affiche la focale
endif

Je pourrais même faire
iExif:ReadExifInfo("TEMP.JPG"):GetParam("FocalLength") mais je trouve
cela


moins lisible.

Dans l'exemple de Jerz (en PHP cfr
http://fr3.php.net/manual/fr/function.exif-read-data.php), c'est plus ou
moins la même chose.

exif_read_data() lit les en-têtes EXIF des images JPEG et TIFF. Elle


retourne un tableau associatif avec comme index les noms des en-têtes,
et


en
valeur, les valeurs des en-têtes. Si aucune donnée n'a pu être lue, elle
retourne FALSE.
filename est le nom du fichier à lire. Il ne peut pas être une URL.

sections est une liste de valeur séparées par des virgules des sections
qui

devront être présentées dans le tableau de résultat.

<<

Peu importe le language, le principe est identique et la syntaxe
similaire.


Eric


"Emmanuel Thiry" a écrit dans le message de
news:
Pour afficher le champ "FocalLength" d'une photo :

#!/usr/bin/perl
use Image::ExifTool qw(ImageInfo);
$file = "TEMP.JPG";
$info = ImageInfo($file);
print "FocalLength : $$info{'FocalLength'}n";

Pour afficher TOUS les champs exif (triés par ordre alphabétique)
d'une



photo, remplacer la dernière ligne par :
print "$_ => $$info{$_}n" foreach sort keys %$info;



"Eric Hourant" a écrit dans le
message



de
news:412ad0b7$0$4130$
Jean,
Il vaut mieux utiliser la lib perl exif <<
Tu pourrais peut-être montrer un exemple de code. Non ?



Eric

"Jean Nemard" a écrit dans le message de
news:
Eric Hourant wrote:

Pour l'utiliser, c'est un truc qui ressemble à ceci
(CA-Visual-Object




pour
ma part mais la syntaxe est similaire en VB, VBA ou C++) :


Il vaut mieux utiliser la lib perl exif que cette monstruosité
syntaxique


!



















1 2