Implements interfaces:
Class representing an Image File Directory (IFD).
TIFF data is structured as a number of Image File Directories, IFDs for short. Each IFD contains a number of entries, some data and finally a link to the next IFD.
Located in /src/PelIfd.php (line 73)
Get the name of an IFD type.
Construct a new Image File Directory (IFD).
The IFD will be empty, use the addEntry() method to add an PelEntry. Use the setNext() method to link this IFD to another.
Adds an entry to the directory.
Add a sub-IFD.
Any previous sub-IFD of the same type will be overwritten.
Turn this directory into bytes.
This directory will be turned into a byte string, with the specified byte order. The offsets will be calculated from the offset given.
Return an iterator for all entries contained in this IFD.
Used with foreach as in
Return a sub IFD.
Is a given tag valid for this IFD?
Different types of IFDs can contain different kinds of tags --- the IFD0 type, for example, cannot contain a PelTag::GPS_LONGITUDE tag.
A special exception is tags with values above 0xF000. They are treated as private tags and will be allowed everywhere (use this for testing or for implementing your own types of tags).
Load data into a Image File Directory (IFD).
Make a new entry from a bunch of bytes.
This method will create the proper subclass of PelEntry corresponding to the PelTag and PelFormat given. The entry will be initialized with the data given.
Please note that the data you pass to this method should come from an image, that is, it should be raw bytes. If instead you want to create an entry for holding, say, an short integer, then create a PelEntryShort object directly and load the data into it.
A PelUnexpectedFormatException is thrown if a mismatch is discovered between the tag and format, and likewise a PelWrongComponentCountException is thrown if the number of components does not match the requirements of the tag. The requirements for a given tag (if any) can be found in the documentation for PelTag.
Does a given tag exist in this IFD?
This methods is part of the ArrayAccess SPL interface for overriding array access of objects, it allows you to check for existance of an entry in the IFD:
Retrieve a given tag from this IFD.
This methods is part of the ArrayAccess SPL interface for overriding array access of objects, it allows you to read entries from the IFD the same was as for an array:
Set or update a given tag in this IFD.
This methods is part of the ArrayAccess SPL interface for overriding array access of objects, it allows you to add new entries or replace esisting entries by doing:
Note that the actual array index passed is ignored! Instead the PelTag from the entry is used.
Unset a given tag in this IFD.
This methods is part of the ArrayAccess SPL interface for overriding array access of objects, it allows you to delete entries in the IFD by doing:
Make this directory point to a new directory.
Set thumbnail data.
Use this to embed an arbitrary JPEG image within this IFD. The data will be checked to ensure that it has a proper PelJpegMarker::EOI at the end. If not, then the length is adjusted until one if found. An PelIfdException might be thrown (depending on Pel::$strict) this case.
Exif IFD.
Pass this to the constructor when creating an IFD which will be the Exif sub-IFD.
GPS IFD.
Pass this to the constructor when creating an IFD which will be the GPS sub-IFD.
Main image IFD.
Pass this to the constructor when creating an IFD which will be the IFD of the main image.
Thumbnail image IFD.
Pass this to the constructor when creating an IFD which will be the IFD of the thumbnail image.
Interoperability IFD.
Pass this to the constructor when creating an IFD which will be the interoperability sub-IFD.
Documentation generated on Thu, 05 May 2011 07:19:16 +0200 by phpDocumentor 1.4.3