javax.imageio.metadata
Class IIOMetadata
java.lang.Object
javax.imageio.metadata.IIOMetadata
public abstract class IIOMetadata
- extends Object
Represents metadata that describe an image or an image stream.
Each ImageIO plugin will represent image data using an opaque
object but all such objects should expose their internal
information as a tree of IIOMetadataNodes.
There are three formats of metadata that a plugin can support:
- a "native" format
- a custom format
- a standard plugin-neutral format
If a plugin supports more than one format of metadata, the other
formats can be retrieved by calling getMetadataFormatNames.
The native format is used to transfer metadata from one image to
another image of the same type, losslessly.
The custom format describes the image metadata and exposes a tree
of IIOMetadataNodes but its internal representation is specific to
this plugin.
The plugin-neutral format uses a generic tree structure as its
internal representation.
ImageTranscoders may be used to convert metadata understood by one
plugin to metadata understood by another, however the conversion
may be lossy.
Constructor Summary |
protected |
IIOMetadata()
Construct an IIOMetadata object. |
protected |
IIOMetadata(boolean standardMetadataFormatSupported,
String nativeMetadataFormatName,
String nativeMetadataFormatClassName,
String[] extraMetadataFormatNames,
String[] extraMetadataFormatClassNames)
Construct an IIOMetadata object. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
controller
protected IIOMetadataController controller
defaultController
protected IIOMetadataController defaultController
extraMetadataFormatClassNames
protected String[] extraMetadataFormatClassNames
extraMetadataFormatNames
protected String[] extraMetadataFormatNames
nativeMetadataFormatClassName
protected String nativeMetadataFormatClassName
nativeMetadataFormatName
protected String nativeMetadataFormatName
standardFormatSupported
protected boolean standardFormatSupported
IIOMetadata
protected IIOMetadata()
- Construct an IIOMetadata object.
IIOMetadata
protected IIOMetadata(boolean standardMetadataFormatSupported,
String nativeMetadataFormatName,
String nativeMetadataFormatClassName,
String[] extraMetadataFormatNames,
String[] extraMetadataFormatClassNames)
- Construct an IIOMetadata object.
- Parameters:
standardMetadataFormatSupported
- nativeMetadataFormatName
- nativeMetadataFormatClassName
- extraMetadataFormatNames
- extraMetadataFormatClassNames
-
- Throws:
IllegalArgumentException
- if extraMetadataFormatNames has length of
zero or extraMetadataFormatNames and extraMetadataFormatClassNames are
neither both null, not have the same length
activateController
public boolean activateController()
getController
public IIOMetadataController getController()
getDefaultController
public IIOMetadataController getDefaultController()
getExtraMetadataFormatNames
public String[] getExtraMetadataFormatNames()
getMetadataFormat
public IIOMetadataFormat getMetadataFormat(String formatName)
getMetadataFormatNames
public String[] getMetadataFormatNames()
getNativeMetadataFormatName
public String getNativeMetadataFormatName()
hasController
public boolean hasController()
isReadOnly
public abstract boolean isReadOnly()
isStandardMetadataFormatSupported
public boolean isStandardMetadataFormatSupported()
reset
public abstract void reset()
setController
public void setController(IIOMetadataController controller)
getAsTree
public abstract Node getAsTree(String formatName)
getStandardChromaNode
protected IIOMetadataNode getStandardChromaNode()
getStandardCompressionNode
protected IIOMetadataNode getStandardCompressionNode()
getStandardDataNode
protected IIOMetadataNode getStandardDataNode()
getStandardDimensionNode
protected IIOMetadataNode getStandardDimensionNode()
getStandardDocumentNode
protected IIOMetadataNode getStandardDocumentNode()
getStandardTextNode
protected IIOMetadataNode getStandardTextNode()
getStandardTileNode
protected IIOMetadataNode getStandardTileNode()
getStandardTransparencyNode
protected IIOMetadataNode getStandardTransparencyNode()
getStandardTree
protected final IIOMetadataNode getStandardTree()
mergeTree
public abstract void mergeTree(String formatName,
Node root)
throws IIOInvalidTreeException
- Throws:
IIOInvalidTreeException
setFromTree
public void setFromTree(String formatName,
Node root)
throws IIOInvalidTreeException
- Throws:
IIOInvalidTreeException