NEWS

NEWS 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.


PEL Version 0.6  July 21st 2004
*******************************

Notes:

The interface for PelJpeg and PelTiff was changed so that one can now
add new content from scratch to JPEG and TIFF images.  Bugs in the
loading of signed bytes and shorts were fixed, aswell as a bug where
timestamps were saved in UTC time, but loaded in local time.  The code
that turned PelJpeg objects into bytes was fixed, and new test cases
were written to test the writing and reading of PelJpeg objects to and
from files.  New images from Nikon models E950, E5000, and Coolscan IV
have been added to the test suite, bringing the total number of tests
up to more than 1000.

Changes:

* The timestamps were saved as UTC time in PelEntryTime, but loaded as
  local time in PelEntry.  This lead to differences when one tried to
  load a previously saved timestamp.

* Changed the constructors in PelJpeg, PelExif, PelTiff, and PelIfd so
  that one can now make new objects without filling them with data
  immediatly.  This makes it possible to add, say, a new APP1 section
  with EXIF to a JPEG image lacking such information.

* Fixed loading of signed bytes and shorts in PelConvert.

* Renamed the isValidMarker() method into just isValid() in
  PelJpegMarker, so that it matches the other isValid() methods found
  in PelJpeg and PelTiff.

* Added test images from Nikon models E950, E5000 and the film scanner
  Coolscan IV ED, and added tests that would read their contents.

* The shell scripts could only be run from the test directory because
  of the use of relative paths in the require_once() statements.  The
  scripts can now be run from any directory.

* A stupid bug that prevented PelJpeg objects from being turned into
  bytes was fixed.

* Fixed the output of PelEntryRationals::getText().


PEL Version 0.5  June 28th, 2004
********************************

Notes:

This release has been tested with images from a number of different
camera models (from Fujifilm, Nikon, Ricoh, Sony, and Canon), leading
to the discovery and fixing of a number of bugs.  The API for
PelJpeg::getSection() was changed slightly, making it more convenient
to use.  All classes and methods are now documented.

Changes:

* Some images have content following the EOI marker --- this would
  make PEL thrown an exception.  The content is now stored as a
  PelJpegContent object associated with the fictive marker 0x00.

* Added code to handle images where the length of the thumbnail image
  is broken.  PEL would previously throw an exception, but the length
  is now adjusted instead, and the parsing continues.

* Fixed a number of bugs regarding the conversion back and forth
  between integers and bytes.  These bugs affected the parsing of
  large integers that would overflow a signed 32 bit integer.

* Fixed bug #976782.  If an image contains two APP1 sections, PEL
  would crash trying to parse the second non-EXIF section.  PEL will
  now just store a non-EXIF APP1 section as a generic PelJpegContent
  object.

* Removed the PelJpegSection class.  This lead to a rewrite of the
  PelJpeg::getSection() method, so that it now takes a PelJpegMarker
  as argument instead of the section number.

* The byte order can now be specified when a PelTiff object is
  converted into bytes.

* Updated documentation, PEL is now fully documented.


PEL Version 0.4  June 9th, 2004
*******************************

Notes:

The infrastructure for internationalisation has been put in place.
Preliminary translations for Danish, German, French, and Spanish is
included.  Support for tags with GPS information were disabled due to
conflicts with a number of normal tags.

Changes:

* Disabled the code that tries to lookup the title and description of
  the GPS related tags, since those tags have the same hexadecimal
  value as a number of other normal tags.  This means that there is no
  support for tags with GPS information.

* Marked strings for translation throughout the source code.

* Added German, French, and Spanish translations taken from libexif.
  The translations were made by Lutz Müller, Fabian Mandelbaum, and
  Arnaud Launay, respectively.

* Added Danish translation.

* Added new static methods Pel::tra() and Pel::fmt() which are used
  for interaction with Gettext.  The first function simply translates
  its argument, the second will in addition function like sprintf()
  when given several arguments.

* Updated documentation, both the doc comments in the code and the
  README and INSTALL files.


PEL Version 0.3  May 25th, 2004
*******************************

Notes:

Support was added for parsing TIFF images, leading to a mass renaming
of files and classes to cleanup the class hierarchy.  The decoding of
EXIF data is now tested against known values (over 400 individual
tests), this lead to the discovery of a couple of subtle bugs.  The
documentation has been updated and expanded.

Changes:

* Renamed all files and classes so that only EXIF specific code is
  labeled with Exif.  So, for example, PelExifIfd is now PelIfd, since
  the IFD structure is not specific to EXIF but rather to TIFF images.
  The same applies to the former PelExifEntry* classes.

* Fixed offset bug in PelDataWindow::getBytes() which caused the
  method to return too much data.

* Added support for the SCENE_TYPE tag.

* Fixed display of integer version numbers.  Version x.0 would be
  displayed as just version 'x' before.

* Unit tests for EXIF decoding.  PEL is now tested with an image from
  a Sony DSC V1 and one from a Canon IXUS II.

* Changed all occurrences of include_once() to require_once() since
  the files are required.

* Updated documentation all over.


PEL Version 0.2  May 16th, 2004
*******************************

Notes:

This release brings updated documentation and better support for the
EXIF user comment tag and tags containing version information.  The
code is now tested using SimpleTest.

Changes:

* All PelExifEntry descendant classes now use setValue() and
  getValue() methods consistently.

* Signed and unsigned numbers (bytes, shorts, longs, and rationals)
  are now handled correctly.

* The SimpleTest (http://sf.net/projects/simpletest) framework is used
  for regression testing.

* Added new PelExifEntryUserComment class to better support the EXIF
  user comment tag.

* Added new PelExifEntryVersion class to support the EXIF tags with
  version information, namely the EXIF_VERSION, FLASH_PIX_VERSION, and
  INTEROPERABILITY_VERSION tags.

* Updated doc comments all over.

PEL Version 0.1  May 8th, 2004
******************************

Notes:

The initial release of PEL.  Most of the functionality is in place:
JPEG files are parsed, EXIF entries are found and interpreted, the
entries can be edited and new entries can be added, and finally, the
whole thing can be turned into bytes and saved as a valid JPEG file.

The API is still subject to change, and will remain so until version
1.0 is reached.

SourceForge.net Logo Documentation generated on Wed, 21 Jul 2004 19:12:53 +0200 by phpDocumentor 1.3.0RC3