web-dev-qa-db-fra.com

ImageIO - obtenir le type d'image et les données exif

Étant donné un fichier source (ou plus générique - flux d'entrée), je dois découvrir

  • est-ce une image
  • s'il s'agit d'une image, récupérez son type (png/jpeg/gif/etc)
  • récupérer les données exif, si disponibles

J'ai regardé l'API, mais il n'est pas clair comment obtenir le type d'image ou les données Exif.

26
jdevelop

La dernière fois que j'ai dû faire cela, il y a quelques années, l'API standard ne pouvait pas lire les données EXIF. Cette bibliothèque peut le faire cependant:

http://www.drewnoakes.com/code/exif/

28
OpenSauce

Réponse simple: utilisez https://github.com/drewnoakes/metadata-extractor/

Si vous êtes fou/courageux/curieux, vous pouvez obtenir le type d'image du flux en lisant les premiers octets (ce sont nombres magiques ). Je crois que l'exif est généralement au début du flux aussi.

15
matt burns

C'est un vieux fil, mais je le faisais récemment et j'ai trouvé la bibliothèque Apache Tika utile. Particulièrement pour analyser des flux génériques pour détecter le contenu qu'ils contiennent.

Je pensais que cela pourrait aider les autres.

http://tika.Apache.org/

8
Eurospoofer