Package com.twelvemonkeys.imageio
Class ImageWriterBase
- java.lang.Object
-
- javax.imageio.ImageWriter
-
- com.twelvemonkeys.imageio.ImageWriterBase
-
- All Implemented Interfaces:
javax.imageio.ImageTranscoder
- Direct Known Subclasses:
DIBImageWriter,ICNSImageWriter,IFFImageWriter,JPEGImageWriter,PICTImageWriter,PNMImageWriter,PSDImageWriter,TGAImageWriter,TIFFImageWriter
public abstract class ImageWriterBase extends javax.imageio.ImageWriterAbstract base class for image writers.- Version:
- $Id: ImageWriterBase.java,v 1.0 Sep 24, 2007 12:22:28 AM haraldk Exp$
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.imageio.stream.ImageOutputStreamimageOutputFor convenience.
-
Constructor Summary
Constructors Modifier Constructor Description protectedImageWriterBase(javax.imageio.spi.ImageWriterSpi provider)Constructs anImageWriterand sets itsoriginatingProviderinstance variable to the supplied value.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidassertOutput()Makes sure output is set.javax.imageio.metadata.IIOMetadataconvertStreamMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageWriteParam param)Returnsnullvoiddispose()protected static java.awt.image.BufferedImagefakeAOI(java.awt.image.BufferedImage pImage, javax.imageio.ImageWriteParam pParam)Utility method for getting the area of interest (AOI) of an image.protected static java.awt.ImagefakeSubsampling(java.awt.Image pImage, javax.imageio.ImageWriteParam pParam)Utility method for getting the subsampled image.javax.imageio.metadata.IIOMetadatagetDefaultStreamMetadata(javax.imageio.ImageWriteParam param)Returnsnulljava.lang.StringgetFormatName()protected static java.awt.RectanglegetSourceRegion(javax.imageio.ImageWriteParam pParam, int pWidth, int pHeight)voidreset()protected voidresetMembers()voidsetOutput(java.lang.Object output)-
Methods inherited from class javax.imageio.ImageWriter
abort, abortRequested, addIIOWriteProgressListener, addIIOWriteWarningListener, canInsertEmpty, canInsertImage, canRemoveImage, canReplaceImageMetadata, canReplacePixels, canReplaceStreamMetadata, canWriteEmpty, canWriteRasters, canWriteSequence, clearAbortRequest, convertImageMetadata, endInsertEmpty, endReplacePixels, endWriteEmpty, endWriteSequence, getAvailableLocales, getDefaultImageMetadata, getDefaultWriteParam, getLocale, getNumThumbnailsSupported, getOriginatingProvider, getOutput, getPreferredThumbnailSizes, prepareInsertEmpty, prepareReplacePixels, prepareWriteEmpty, prepareWriteSequence, processImageComplete, processImageProgress, processImageStarted, processThumbnailComplete, processThumbnailProgress, processThumbnailStarted, processWarningOccurred, processWarningOccurred, processWriteAborted, removeAllIIOWriteProgressListeners, removeAllIIOWriteWarningListeners, removeIIOWriteProgressListener, removeIIOWriteWarningListener, removeImage, replaceImageMetadata, replacePixels, replacePixels, replaceStreamMetadata, setLocale, write, write, write, writeInsert, writeToSequence
-
-
-
-
Field Detail
-
imageOutput
protected javax.imageio.stream.ImageOutputStream imageOutput
For convenience. Only set if the output is anImageInputStream.- See Also:
setOutput(Object)
-
-
Constructor Detail
-
ImageWriterBase
protected ImageWriterBase(javax.imageio.spi.ImageWriterSpi provider)
Constructs anImageWriterand sets itsoriginatingProviderinstance variable to the supplied value.Subclasses that make use of extensions should provide a constructor with signature
(ImageWriterSpi, Object)in order to retrieve the extension object. If the extension object is unsuitable, anIllegalArgumentExceptionshould be thrown.- Parameters:
provider- theImageWriterSpithat is constructing this object, ornull.
-
-
Method Detail
-
getFormatName
public java.lang.String getFormatName() throws java.io.IOException- Throws:
java.io.IOException
-
setOutput
public void setOutput(java.lang.Object output)
- Overrides:
setOutputin classjavax.imageio.ImageWriter
-
assertOutput
protected void assertOutput()
Makes sure output is set.- Throws:
java.lang.IllegalStateException- ifgetOutput() == null.
-
dispose
public void dispose()
- Overrides:
disposein classjavax.imageio.ImageWriter
-
reset
public void reset()
- Overrides:
resetin classjavax.imageio.ImageWriter
-
resetMembers
protected void resetMembers()
-
getDefaultStreamMetadata
public javax.imageio.metadata.IIOMetadata getDefaultStreamMetadata(javax.imageio.ImageWriteParam param)
Returnsnull- Specified by:
getDefaultStreamMetadatain classjavax.imageio.ImageWriter- Parameters:
param- ignored.- Returns:
null.
-
convertStreamMetadata
public javax.imageio.metadata.IIOMetadata convertStreamMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageWriteParam param)Returnsnull- Specified by:
convertStreamMetadatain interfacejavax.imageio.ImageTranscoder- Specified by:
convertStreamMetadatain classjavax.imageio.ImageWriter- Parameters:
inData- ignored.param- ignored.- Returns:
null.
-
getSourceRegion
protected static java.awt.Rectangle getSourceRegion(javax.imageio.ImageWriteParam pParam, int pWidth, int pHeight)
-
fakeAOI
protected static java.awt.image.BufferedImage fakeAOI(java.awt.image.BufferedImage pImage, javax.imageio.ImageWriteParam pParam)Utility method for getting the area of interest (AOI) of an image. The AOI is defined by theIIOParam.setSourceRegion(java.awt.Rectangle)method.Note: If it is possible for the writer to write the AOI directly, such a method should be used instead, for efficiency.
- Parameters:
pImage- the image to get AOI frompParam- the param optionally specifying the AOI- Returns:
- a
BufferedImagecontaining the area of interest (source region), or the original image, if no source region was set, orpParamwasnull
-
fakeSubsampling
protected static java.awt.Image fakeSubsampling(java.awt.Image pImage, javax.imageio.ImageWriteParam pParam)Utility method for getting the subsampled image. The subsampling is defined by theIIOParam.setSourceSubsampling(int, int, int, int)method.NOTE: This method does not take the subsampling offsets into consideration.
Note: If it is possible for the writer to subsample directly, such a method should be used instead, for efficiency.
- Parameters:
pImage- the image to subsamplepParam- the param optionally specifying subsampling- Returns:
- an
Imagecontaining the subsampled image, or the original image, if no subsampling was specified, orpParamwasnull
-
-