You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
exiv2/doc/getting-started.html

84 lines
3.7 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Exiv2 - Exif metadata manipulation library and tools</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="html/doxygen.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1>Getting started</h1>
<h2><a href="html/namespaces.html">Namespaces</a></h2>
<p>The <a href="html/index.html">Exiv2 library</a> is made up of all
elements defined in the <a href="html/namespaceExiv2.html">Exiv2
namespace</a>. The Action and Util namespaces are only used by the
Exiv2 command line utility. To learn about the library, concentrate on
the members of the Exiv2 namespace.</p>
<h2><a href="html/classes.html">Classes</a></h2>
<p><a class="el" href="html/classExiv2_1_1ExifData.html">Exiv2::ExifData</a> is
the top-level class of the Exiv2 library. It has a container of Exif
metadata and defines related methods. The container holds
<a class="el" href="html/classExiv2_1_1Metadatum.html">Exiv2::Metadatum</a>
objects. Class Exiv2::Metadatum defines methods to access the
information of one Exif tag. It models the tag data as a key and value
pair. A key is just a well-formed string. The abstract base class
<a class="el" href="html/classExiv2_1_1Value.html">Exiv2::Value</a> defines the
interface to access tag information, from which concrete values are
derived. The actual value used in a metadatum depends on the type of
the Exif tag. It is usually determined when the Exif metadata is read
from an image. It is also possible to manually create a Value and add
together with a key add it to an ExifData container.</p>
<h2><a href="html/examples.html">Examples</a></h2>
<p>Two simple examples demonstrate the basic use of Exiv2
functionality: <a href="html/exifprint_8cpp-example.html">Exifprint</a>
shows how the Exif data of an image can be written to the screen.
<a href="html/addmoddel_8cpp-example.html">Addmoddel</a> shows how to
add, modify and delete Exif metadata. Have a look at the
implementation of the different actions of the Exiv2 utility
(actions.cpp) for more real-world code.</p>
<h2><a href="makernote.html">Makernotes</a></h2>
<p>Exif Makernote data can be accessed through ExifData in the same
way as the standard Exif tags. In other words, for each entry of a
known Makernote, there is a corresponding Metadatum in the ExifData
container. The abstract base class
<a class="el" href="html/classExiv2_1_1MakerNote.html">Exiv2::MakerNote</a> defines
the Makernote interface. Subclass
<a class="el" href="html/classExiv2_1_1IfdMakerNote.html">Exiv2::IfdMakerNote</a>
models makernotes encoded in IFD format.
<a href="html/classExiv2_1_1MakerNote.html#_details">Implementing a new
IFD makernote</a> is trivial. Implementing a new makernote that is not
encoded in IFD format however, is not. Please
<a href="mailto:ahuggel@gmx.net"> contact me</a> if you have such a
makernote specification and would like assistance adding it to Exiv2.</p>
<h2>IFD (Image File Directory)</h2>
<p><a class="el" href="html/classExiv2_1_1Ifd.html">Exiv2::Ifd</a> is a generic
low-level class that models an image file directory as defined by TIFF
and used in the Exif standard. Exiv2::Ifd could be used to implement
read only as well as read/write access to Exif (or TIFF) data without
the overhead (and convenience) of Exiv2::ExifData.</p>
<h2>Components</h2>
<p>The following picture shows the components that make up the Exiv2
library and how they depend on each other. The component names are the
same as the basenames of their source files. Each component has its
own header and source files.</p>
<center>
<p><img src="exiv2.gif" width="422" height="465" alt="Exiv2 components diagram"></p>
</center>
<p>&nbsp;</p>
</body>
</html>