32N/A<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
32N/A<html>
911N/A<head>
851N/A<!--
32N/ACopyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
32N/ADO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
32N/A
32N/AThis code is free software; you can redistribute it and/or modify it
32N/Aunder the terms of the GNU General Public License version 2 only, as
32N/Apublished by the Free Software Foundation. Oracle designates this
32N/Aparticular file as subject to the "Classpath" exception as provided
32N/Aby Oracle in the LICENSE file that accompanied this code.
32N/A
32N/AThis code is distributed in the hope that it will be useful, but WITHOUT
32N/AANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
32N/AFITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
32N/Aversion 2 for more details (a copy is included in the LICENSE file that
32N/Aaccompanied this code).
32N/A
32N/AYou should have received a copy of the GNU General Public License version
32N/A2 along with this work; if not, write to the Free Software Foundation,
32N/AInc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
32N/A
32N/APlease contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
32N/Aor visit www.oracle.com if you need additional information or have any
32N/Aquestions.
32N/A-->
32N/A
32N/A</head>
32N/A
32N/A<body bgcolor="white">
32N/A
32N/AA package of the Java Image I/O API dealing with reading and writing
493N/Ametadata.
32N/A
32N/A<p>
851N/A
32N/AWhen reading an image, its per-stream and per-image metadata is made
911N/Aavailable as an <code>IIOMetadata</code> object. The internals of
911N/Athis object are specific to the plug-in that created it. Its contents
911N/Amay be accessed in the form of an XML <code>Document</code>, which is
911N/Aimplemented as a tree of <code>IIOMetadataNode</code> objects.
32N/A
32N/A<p>
32N/A
32N/AWhen writing an image, its metadata may be set by defining or
32N/Amodifying an <code>IIOMetadata</code> object. Such an object may be
obtained from an <code>ImageWriter</code> or
<code>ImageTranscoder</code> (from the
<code>javax.imageio</code> package). Once such an object has
been obtained, its contents may be set of modified via a
<code>Document</code> consisting of <code>IIOMetadataNode</code>s.
The document format may optionally be described using an
<code>IIOMetadataFormat</code> object.
<p>
The format of the metadata contained in the XML <code>Document</code>
is identified by a string which appears as the root node of the tree
of <code>IIOMetadataNode</code> objects. This string contains a version
number, e.g. "javax_imageio_jpeg_image_1.0". Readers and writers may
support multiple versions of the same basic format and the Image I/O
API has methods that allow specifying which version to use by passing
the string to the method/constructor used to obtain an <code>IIOMetadata</code>
object. In some cases, a more recent version may not be strictly
compatible with a program written expecting an older version (for
an example, see the Native Metadata Format section of the JPEG Metadata
Usage Notes below).
<p>
Plug-ins may choose to support a <A
HREF="doc-files/standard_metadata.html">standard (plug-in neutral)
format</A>. This format does not provide lossless encoding of
metadata, but allows a portion of the metadata to be accessed in a
generic manner.
<p>
Each of the standard plug-ins supports a so-called "native" metadata
format, which encodes its metadata losslessly:
<ul>
<li>
<A HREF="doc-files/gif_metadata.html">
GIF metadata
</A>
<li>
<A HREF="doc-files/jpeg_metadata.html">
JPEG metadata
</A>
<li>
<A HREF="doc-files/png_metadata.html">
PNG metadata
</A>
<li>
<A HREF="doc-files/bmp_metadata.html">
BMP metadata
</A>
<li>
<A HREF="doc-files/wbmp_metadata.html">
WBMP metadata
</A>
</ul>
@since 1.4
</body>
</html>