2010-11-05 29 views
7

Quelqu'un peut-il recommander une bibliothèque exif agréable pour tiff img qui peut être utilisé avec un programme Qt? Je voudrais à la fois lire et écrire des données exif.Quelle librairie EXIF ​​puis-je utiliser à partir d'un programme Qt (sur Linux embarqué)?

Veuillez noter que j'ai besoin d'une licence compatible avec un programme à source fermée, , donc une lib qui utilise une licence LGPL ou une licence de style BSD serait vraiment sympa.

Mon premier plan était d'utiliser QExifImageHeader et QExifValue dans Qt Extended, mais je remarque que étendu n'a jamais obtenu la licence LGPL et est en plus de cela, il est discontinued ....

La plate-forme utilisée est Linux embarqué.

Merci Johan


Mise à jour:

Depuis que je suis en ajoutant une prime pour cette question, je suis raffinent la question d'être sur le point d'ajouter des données exif sur un image tiff d'un programme Qt.

Une bonne lib. À utiliser et un exemple sur comment l'utiliser serait vraiment sympa.

Répondre

9

Même si ce n'est pas lié à Qt, probablement votre meilleure option est la libexif C EXIF library. C'est une bibliothèque de base GNOME (donc largement déployée, testée et documentée), elle est complètement indépendante des outils, n'a pas de dépendance et est sous licence LGPL. C'est une bibliothèque C, donc son API n'est pas idiomatique de Qt, néanmoins elle est puissante et facile à utiliser.

J'ai vu beaucoup de logiciels basés sur Qt qui préfèrent utiliser le exiv2 library, qui est écrit en C++, mais exiv2 est GPL (avec l'option d'acheter une licence commerciale) et offre plus ou moins la même fonctionnalité de libexif. Ma suggestion est d'essayer libexif et, seulement si cela ne répond pas à vos exigences, essayez exiv2.

+1

Ce n'est pas la plus belle chose d'utiliser c libs avec C++, mais que diable ça sonne comme ça va faire le travail :) – Johan

+0

Si c'est vraiment important pour vous d'utiliser du code pur C++, alors vous pouvez choisir exiv2 (qui est en C++ pur), mais vous devrez contacter son auteur pour obtenir une licence commerciale. –

2

Vous pouvez utiliser la bibliothèque libjpeg-exif, qui inclut des outils de manipulation et de lecture des données EXIF.

+0

Je n'ai trouvé aucun moyen de le faire dans libjpeg. – lalitm

+0

@hmmm, j'ai mis à jour le lien. Il semble qu'il y ait au moins quelque chose dans les sources fink, des outils pour lire et manipuler les données EXIF. –