aboutsummaryrefslogblamecommitdiffstats
path: root/README
blob: 75e9bf92a0ad2b93375d89bab918c81025aa76c3 (plain) (tree)
1
2
3
4
5
6
7
8


       




                                                                          




                                                                              

                  


                                           

                                                                 
 
                                                        
 





                                                                               
                           
        

                                 
 
 
                       

                       


                                                                       
 

                                                              
 


                                                                              
                                                                                
                                                                   
 
                                                                 

 





                                                                             

                   
 
                                                                
 
            
 
                                                        

 


       
                                                           













                                                                           




          
                                                                          
                                                                            
 
                                                                           
 
                              
 
                                                                                
                                         
 
                        

                                              




                                                                             
pyexiv2
*******

Welcome to pyexiv2, a python binding to exiv2 (http://exiv2.org/), the C++
library for manipulation of EXIF, IPTC and XMP image metadata.
It is a python module that allows your python scripts to read and write
metadata (EXIF, IPTC, XMP, thumbnails) embedded in image files
(JPEG, TIFF, ...).

Point your browser to http://exiv2.org/metadata.html for the complete metadata
tag reference.


Build dependencies
==================

pyexiv2 depends on the following libraries:

 * boost.python (http://www.boost.org/libs/python/doc/index.html)
 * exiv2 (http://www.exiv2.org/)

It uses SCons (http://www.scons.org/) as a build system.

Some examples in src/ use PyGTK (http://www.pygtk.org/) and PyQt
(http://www.riverbankcomputing.co.uk/software/pyqt/) to display image previews,
those are optional dependencies.

This is a typical list of build dependencies for a Debian/Ubuntu system:

 * python-all-dev (≥ 2.6)
 * scons
 * libexiv2-dev (≥ 0.19)
 * libboost-python-dev (≥ 1.35)


Building and installing
=======================

To build and install the library, while in the top-level directory
(e.g. '~/dev/pyexiv2', which should contain a file named 'SConstruct'),
run the following commands:

 $ scons
 $ scons install # as administrator, e.g. `sudo scons install`

The result of the build is a dynamic library, libexiv2python.so, in the build/
directory. This is the low-level binding. It is in turn used in a higher level
module, pyexiv2.
The install command installs the two modules in your site-specific directory for
Python modules (e.g. '/usr/lib/python2.6/dist-packages/' on Linux).

To use pyexiv2 in your scripts, simply import the pyexiv2 module.


Documentation
=============

Please refer to the internal documentation for a guide on how to use pyexiv2.
In a python interpreter, type:

 >>> import pyexiv2
 >>> help(pyexiv2)

Alternatively, you can generate HTML documentation using sphinx:

 $ scons doc

The generated documentation can be found in doc/_build/.


License
=======

Copyright (C) 2006-2010 Olivier Tilloy <olivier@tilloy.net>

pyexiv2 is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2 of the License, or (at your
option) any later version.

pyexiv2 is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.

You should have received a copy of the GNU General Public License
along with pyexiv2; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA.


Developers
==========

pyexiv2 is Free Software, meaning that you are encouraged to play with it,
modify it to suit your needs and contribute back your changes and bug fixes.

The bug tracking system and the main bazaar branch are hosted at Launchpad:

 https://launchpad.net/pyexiv2

To get a working copy of the latest version of the code, you need to have bazaar
(http://bazaar.canonical.com/) installed:

 $ bzr branch lp:pyexiv2

Feedback, bug reports and patches are welcome!

Join the pyexiv2-developers team on Launchpad to be informed of the latest
updates and discuss changes and new features on the mailing list: register at
https://launchpad.net/~pyexiv2-developers.