175 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			175 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 				    libexif
 | |
| 				    -------
 | |
| 
 | |
| DESCRIPTION
 | |
| -----------
 | |
| 
 | |
| libexif is a library for parsing, editing, and saving EXIF data. It is
 | |
| intended to replace lots of redundant implementations in command-line
 | |
| utilities and programs with GUIs.
 | |
| 
 | |
| 
 | |
| FEATURES
 | |
| --------
 | |
| 
 | |
| libexif supports parsing, editing and saving of EXIF data. In addition, it
 | |
| has gettext support. All EXIF tags described in EXIF standard 2.1 (and most
 | |
| from 2.2) are supported.  Many maker notes from Canon, Casio, Epson,
 | |
| Fuji, Nikon, Olympus, Pentax and Sanyo cameras are also supported.
 | |
| 
 | |
| 
 | |
| REQUIREMENTS
 | |
| ------------
 | |
| 
 | |
| libexif is written in plain C and does not require any additional library.
 | |
| GNU gettext will be used for language translation, if available.
 | |
| 
 | |
| 
 | |
| LIMITATIONS
 | |
| -----------
 | |
| 
 | |
| libexif can only handle some maker notes, and even those not very well. More
 | |
| work needs to be done. Note that libmnote has been merged with libexif - it
 | |
| is no longer needed.
 | |
| 
 | |
| 
 | |
| USAGE
 | |
| -----
 | |
| 
 | |
| We have documented the libexif API using doxygen and are making
 | |
| the results available at http://libexif.sourceforge.net/api/
 | |
| 
 | |
| The short test programs in the test directory illustrates how to create
 | |
| valid EXIF data from scratch, how to save EXIF data and how to load EXIF
 | |
| data from data in memory. There are also a few simple example programs
 | |
| available in the contrib/examples/ directory.  Don't hesitate to contact
 | |
| us at <libexif-devel@lists.sourceforge.net> if you have any questions
 | |
| on how to use libexif.
 | |
| 
 | |
| To link to libexif into your own package, we recommend using the
 | |
| pkgconfig utility (cf. http://www.freedesktop.org/wiki/Software/pkg-config/ For
 | |
| your convenience, libexif both provides libexif-uninstalled.pc and
 | |
| installs libexif.pc.
 | |
| 
 | |
| 
 | |
| FRONTENDS
 | |
| ---------
 | |
| 
 | |
| Right now, I know of the following frontends to libexif:
 | |
|  - exif:     A small command-line utility to show EXIF information in JPEG
 | |
|              files (http://www.sourceforge.net/projects/libexif).
 | |
|  - gexif:    A GTK+ frontend for editing EXIF data
 | |
|              (http://www.sourceforge.net/projects/libexif).
 | |
|  - gphoto2:  A command-line frontend to libgphoto2, a library to access a 
 | |
|              wide range of digital cameras (http://www.gphoto.org).
 | |
|  - gtkam:    A GTK+ frontend to libgphoto2 (http://www.gphoto.org).
 | |
|  - thirdeye: Digital photos organizer and driver for eComStation
 | |
|              (http://ecomstation.ru/thirdeye).
 | |
|  - digikam:  digital photo management application for KDE
 | |
|              (http://www.digikam.org/)
 | |
| 
 | |
| If you would like to migrate your program to use libexif or add EXIF support
 | |
| to it, don't hesitate to contact the authors.
 | |
| 
 | |
| 
 | |
| LIBRARIES
 | |
| ---------
 | |
| 
 | |
| I know of the following libraries that use or have been inspired by libexif:
 | |
|  - libexif-gtk: library of widgets to help display EXIF tags in GTK
 | |
|    programs (part of the libexif project)
 | |
|  - pel: PHP-Code (http://pel.sourceforge.net)
 | |
| 
 | |
| 
 | |
| BUILDING
 | |
| --------
 | |
| 
 | |
| It really depends on your environment what to do in order to get libexif
 | |
| to build. Building from the source tar ball usually involves the commands:
 | |
| 
 | |
|   ./configure
 | |
|   make
 | |
|   sudo make install
 | |
| 
 | |
| When building from source out of CVS, something like the following will be
 | |
| necessary:
 | |
| 
 | |
|   gettextize
 | |
|   mv po/Makevars.template po/Makevars
 | |
|   aclocal -I auto-m4 -I m4m
 | |
|   autoheader
 | |
|   libtoolize --force
 | |
|   automake --add-missing
 | |
|   autoconf
 | |
|   ./configure
 | |
|   make
 | |
| 
 | |
| Or, probably just:
 | |
| 
 | |
|   autoreconf -i
 | |
|   ./configure
 | |
|   make
 | |
| 
 | |
| Besides the standard arguments, configure takes several specific to libexif:
 | |
| 
 | |
|   --disable-docs          To disable producing any documentation
 | |
|   --enable-internal-docs  Build internal code docs if Doxygen available
 | |
|   --enable-ship-binaries  To include Windows DLLs in 'make dist'
 | |
| 
 | |
| Certain specialized applications can reduce the size of the libexif
 | |
| binary by setting one or both of the following macros in the CPPFLAGS
 | |
| environment variable at configure time.  Each one removes certain kinds of
 | |
| text strings and constants from the binary.  Applications which need
 | |
| to access specific, known EXIF tags and know in advance the meaning of
 | |
| their data have no need of those strings and can save considerable space
 | |
| by eliminating them.
 | |
| 
 | |
|  -DNO_VERBOSE_TAG_STRINGS Names and descriptions of EXIF tags, debug messages,
 | |
|                           mandatory EXIF fields (disabling auto-tag-fixup)
 | |
|  -DNO_VERBOSE_TAG_DATA    Names of enumerated tag data contents
 | |
| 
 | |
| 
 | |
| INTERNATIONALIZATION
 | |
| --------------------
 | |
| 
 | |
| The libexif translations are made by volunteers working on their own,
 | |
| either directly with the libexif project or through one of two translation
 | |
| coordination sites, the Translation Project
 | |
| <http://translationproject.org/domain/libexif.html> and Launchpad
 | |
| <https://translations.edge.launchpad.net/ubuntu/precise/+source/libexif/+pots/libexif-12>.
 | |
| Any updates to language translations coordinated by the Translation Project
 | |
| must be made through their web site, but all other languages can be
 | |
| updated either through Launchpad (preferred) or by sending updates to
 | |
| the libexif developers mailing list directly.  As of this writing, the
 | |
| following languages must be updated through the Translation Project:
 | |
| cs da de es fr it ja nl pl sk sv uk vi
 | |
| 
 | |
| If you are interested in translating libexif into a new language, we
 | |
| recommend that you join one of the above translation groups and take
 | |
| advantage of the systems they have built to help you.  A translation
 | |
| disclaimer is NOT required for libexif at the Translation Project; by making
 | |
| a translation, you agree implicitly to provide it under the same license
 | |
| terms as the rest of libexif (LGPL).
 | |
| 
 | |
| 
 | |
| AUTHORS
 | |
| -------
 | |
| 
 | |
| libexif has originally been written by Curtis Galloway
 | |
| <curtisg@users.sourceforge.net>. Because of the original design not
 | |
| supporting editing and saving, Lutz Mueller <lutz@users.sourceforge.net>
 | |
| rewrote libexif from scratch. Since then, many more people have contributed
 | |
| to libexif.
 | |
| 
 | |
| 
 | |
| LINKS
 | |
| -----
 | |
| 
 | |
| Some links you might want to check out if you are interested in further
 | |
| information about EXIF.
 | |
| 
 | |
|  - http://drewnoakes.com/code/exif: metadata extraction framework in Java
 | |
|  - http://www.exif.org: information about the EXIF standard.
 | |
|  - http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/index.html: Looks
 | |
|    like libexif in Perl. Seems to support a lot of MakerNotes.
 |