#include <pngimage.hpp>
Inheritance diagram for Exiv2::PngImage:
Public Member Functions | |
Creators | |
PngImage (BasicIo::AutoPtr io, bool create) | |
Constructor that can either open an existing PNG image or create a new image from scratch. If a new image is to be created, any existing data is overwritten. Since the constructor can not return a result, callers should check the good() method after object construction to determine success or failure. | |
~PngImage () | |
Destructor. | |
Manipulators | |
void | readMetadata () |
Read all metadata supported by a specific image format from the image. Before this method is called, the various metadata types will be empty. | |
void | writeMetadata () |
Todo: Write metadata back to the image. This method is not yet implemented. | |
void | setExifData (const ExifData &exifData) |
Assign new exif data. The new exif data is not written to the image until the writeMetadata() method is called. | |
void | clearExifData () |
Erase any buffered Exif data. Exif data is not removed from the actual image until the writeMetadata() method is called. | |
void | setIptcData (const IptcData &iptcData) |
Assign new iptc data. The new iptc data is not written to the image until the writeMetadata() method is called. | |
void | clearIptcData () |
Erase any buffered Iptc data. Iptc data is not removed from the actual image until the writeMetadata() method is called. | |
void | setComment (const std::string &comment) |
Not supported. PNG format does not contain a comment. Calling this function will do nothing. | |
void | clearComment () |
Not supported. PNG format does not contain a comment. Calling this function will do nothing. | |
void | setMetadata (const Image &image) |
Copy all existing metadata from source Image. The data is copied into internal buffers and is not written to the image until the writeMetadata() method is called. | |
void | clearMetadata () |
Erase all buffered metadata. Metadata is not removed from the actual image until the writeMetadata() method is called. | |
ExifData & | exifData () |
Returns an ExifData instance containing currently buffered Exif data. | |
IptcData & | iptcData () |
Returns an IptcData instance containing currently buffered Iptc data. | |
Accessors | |
bool | good () const |
Check if the Image instance is valid. Use after object construction. | |
const ExifData & | exifData () const |
Returns an ExifData instance containing currently buffered Exif data. | |
const IptcData & | iptcData () const |
Returns an IptcData instance containing currently buffered Iptc data. | |
std::string | comment () const |
Return a copy of the image comment. May be an empty string. | |
BasicIo & | io () const |
Return a reference to the BasicIo instance being used for Io. | |
Friends | |
bool | isPngType (BasicIo &iIo, bool advance) |
Check if the file iIo is a PNG image. |
Exiv2::PngImage::PngImage | ( | BasicIo::AutoPtr | io, | |
bool | create | |||
) |
Constructor that can either open an existing PNG image or create a new image from scratch. If a new image is to be created, any existing data is overwritten. Since the constructor can not return a result, callers should check the good() method after object construction to determine success or failure.
io | An auto-pointer that owns a BasicIo instance used for reading and writing image metadata. Important: The constructor takes ownership of the passed in BasicIo instance through the auto-pointer. Callers should not continue to use the BasicIo instance after it is passed to this method. Use the Image::io() method to get a temporary reference. | |
create | Specifies if an existing image should be read (false) or if a new file should be created (true). |
const ExifData& Exiv2::PngImage::exifData | ( | ) | const [inline, virtual] |
Returns an ExifData instance containing currently buffered Exif data.
The Exif data may have been read from the image by a previous call to readMetadata() or added directly. The Exif data in the returned instance will be written to the image when writeMetadata() is called.
Implements Exiv2::Image.
ExifData& Exiv2::PngImage::exifData | ( | ) | [inline, virtual] |
Returns an ExifData instance containing currently buffered Exif data.
The contained Exif data may have been read from the image by a previous call to readMetadata() or added directly. The Exif data in the returned instance will be written to the image when writeMetadata() is called.
Implements Exiv2::Image.
bool Exiv2::PngImage::good | ( | ) | const [virtual] |
Check if the Image instance is valid. Use after object construction.
Implements Exiv2::Image.
BasicIo& Exiv2::PngImage::io | ( | ) | const [inline, virtual] |
Return a reference to the BasicIo instance being used for Io.
This refence is particularly useful to reading the results of operations on a MemIo instance. For example after metadata has been modified and the writeMetadata() method has been called, this method can be used to get access to the modified image.
Implements Exiv2::Image.
const IptcData& Exiv2::PngImage::iptcData | ( | ) | const [inline, virtual] |
Returns an IptcData instance containing currently buffered Iptc data.
The contained Iptc data may have been read from the image by a previous call to readMetadata() or added directly. The Iptc data in the returned instance will be written to the image when writeMetadata() is called.
Implements Exiv2::Image.
IptcData& Exiv2::PngImage::iptcData | ( | ) | [inline, virtual] |
Returns an IptcData instance containing currently buffered Iptc data.
The contained Iptc data may have been read from the image by a previous call to readMetadata() or added directly. The Iptc data in the returned instance will be written to the image when writeMetadata() is called.
Implements Exiv2::Image.
void Exiv2::PngImage::readMetadata | ( | ) | [virtual] |
Read all metadata supported by a specific image format from the image. Before this method is called, the various metadata types will be empty.
This method returns success even if no metadata is found in the image. Callers must therefore check the size of individual metadata types before accessing the data.
Error | if opening or reading of the file fails or the image data is not valid (does not look like data of the specific image type). |
Implements Exiv2::Image.
void Exiv2::PngImage::setExifData | ( | const ExifData & | exifData | ) | [virtual] |
Assign new exif data. The new exif data is not written to the image until the writeMetadata() method is called.
exifData | An ExifData instance holding exif data to be copied |
Implements Exiv2::Image.
void Exiv2::PngImage::setIptcData | ( | const IptcData & | iptcData | ) | [virtual] |
Assign new iptc data. The new iptc data is not written to the image until the writeMetadata() method is called.
iptcData | An IptcData instance holding iptc data to be copied |
Implements Exiv2::Image.
void Exiv2::PngImage::setMetadata | ( | const Image & | image | ) | [virtual] |
Copy all existing metadata from source Image. The data is copied into internal buffers and is not written to the image until the writeMetadata() method is called.
image | Metadata source. All metadata types are copied. |
Implements Exiv2::Image.