INSTALL

INSTALL file for PEL: PHP EXIF Library.  A library with support for
reading and writing EXIF headers in JPEG and TIFF images using PHP.

Copyright (C) 2004  Martin Geisler <gimpster@users.sourceforge.net>
Licensed under the GNU GPL, see COPYING for details.


Requirements
************

PEL requires PHP version 5, which was released on July the 13rd, 2004.
If your provider still uses PHP 4, then ask them politely to upgrade.

People using Debian GNU/Linux can easily install PHP 5 using the
packages found at http://dotdeb.org/.

Binaries for Windows are available from http://php.net/, where one
also finds the source code for those who want to build PHP 5
themselves.


Installation
************

PEL is installed by downloading it and unpacking it in a directory of
your choice.  Your application can then start using the classed
defined in PEL, most likely the PelJpeg class which contain an entire
JPEG image or the PelTiff class for working with TIFF images.

It is important to understand that PEL is a library and not an
application with a pretty interface --- PEL is a collection of classes
that can be used to parse, read, and write EXIF headers.


Using PEL
*********

Your application should include PelJpeg.php or PelTiff.php for working
with JPEG or TIFF files.  The files will define the PelJpeg and
PelTiff classes, which can hold a JPEG or TIFF image, respectively.
Both of these classes has a loadFile() method that will load, and
parse, a file --- see the API documentation found in the doc directory
or online at

  http://pel.sourceforge.net/doc/

for the full story about those classes and all other available classes
in PEL.

Still, an example would be good.  The following example will load a
JPEG file given as a command line argument, parse the EXIF data
within, change the image description to 'Edited by PEL', and finally
save the file again.  All in just seven lines:

  <?php
  require_once('PelJpeg.php');
  
  $jpeg = new PelJpeg();
  $jpeg->loadFile($argv[1]);
  
  $ifd0 = $jpeg->getSection(PelJpegMarker::APP1)->getTiff()->getIfd();
  $entry = $ifd0->getEntry(PelTag::IMAGE_DESCRIPTION);
  $entry->setValue('Edited by PEL');
  file_put_contents($argv[1], $jpeg->getBytes());
  ?>

See the test directory for this example (or rather a more elaborate
version in the file edit-description.php) and others as PHP files.
You may have to adjust the path to PHP, found in the very first line
of the files before you can execute them.


Changing PEL
************

If you find a bug in PEL then please send a report back so that it can
be fixed in the next version.  You can submit your bugs and other
requests here:

  http://sourceforge.net/tracker/?group_id=108380

If you change the code (to fix bugs or to implement enhancements),
then it is highly recommended that you test your changes against known
good data.  To do this, first download the image tests available from
the PEL homepage:

  http://pel.sourceforge.net/

Unpack this in the test directory, thereby creating an image-tests
directory there.  Then download SimpleTest from

  http://sourceforge.net/projects/simpletest

and use it to check that your changes does not introduce new bugs.
Simply place SimpleTest in a directory parallel to the PEL
installation directory and run the test.php file found in the test
directory in the PEL.  It should report that all tests have passed, if
not, then the change has messed something up.

SourceForge.net Logo Documentation generated on Sun, 10 Oct 2004 19:08:01 +0200 by phpDocumentor 1.3.0RC3