Class JPEGImageWriter
- java.lang.Object
-
- javax.imageio.ImageWriter
-
- com.twelvemonkeys.imageio.ImageWriterBase
-
- com.twelvemonkeys.imageio.plugins.jpeg.JPEGImageWriter
-
- All Implemented Interfaces:
javax.imageio.ImageTranscoder
public final class JPEGImageWriter extends ImageWriterBase
JPEGImageWriter- Version:
- $Id: JPEGImageWriter.java,v 1.0 06.02.12 16:39 haraldk Exp$
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classJPEGImageWriter.InvertedRasterHelper class, returns sample values inverted, as CMYK values needs to be written inverted (255 - value).private classJPEGImageWriter.ProgressDelegator
-
Field Summary
Fields Modifier and Type Field Description private javax.imageio.ImageWriterdelegateOur JPEG writing delegateprivate JPEGImageWriter.ProgressDelegatorprogressDelegatorListens to progress updates in the delegate, and delegates back to this instance-
Fields inherited from class com.twelvemonkeys.imageio.ImageWriterBase
imageOutput
-
-
Constructor Summary
Constructors Constructor Description JPEGImageWriter(JPEGImageWriterSpi provider, javax.imageio.ImageWriter delegate)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidabort()booleancanInsertEmpty(int imageIndex)booleancanInsertImage(int imageIndex)booleancanRemoveImage(int imageIndex)booleancanReplaceImageMetadata(int imageIndex)booleancanReplacePixels(int imageIndex)booleancanReplaceStreamMetadata()booleancanWriteEmpty()booleancanWriteRasters()booleancanWriteSequence()private javax.imageio.metadata.IIOMetadataconvertCMYKMetadata(javax.imageio.metadata.IIOMetadata original, javax.imageio.ImageTypeSpecifier destinationType, javax.imageio.ImageWriteParam param)javax.imageio.metadata.IIOMetadataconvertImageMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param)javax.imageio.metadata.IIOMetadataconvertStreamMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageWriteParam param)Returnsnullvoiddispose()voidendInsertEmpty()voidendReplacePixels()voidendWriteEmpty()voidendWriteSequence()java.util.Locale[]getAvailableLocales()javax.imageio.metadata.IIOMetadatagetDefaultImageMetadata(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param)javax.imageio.metadata.IIOMetadatagetDefaultStreamMetadata(javax.imageio.ImageWriteParam param)Returnsnulljavax.imageio.ImageWriteParamgetDefaultWriteParam()java.util.LocalegetLocale()intgetNumThumbnailsSupported(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param, javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.metadata.IIOMetadata imageMetadata)java.lang.ObjectgetOutput()java.awt.Dimension[]getPreferredThumbnailSizes(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param, javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.metadata.IIOMetadata imageMetadata)private static java.awt.image.RastergetRaster(java.awt.image.RenderedImage image)private voidinstallListeners()private booleanisDestinationCMYK(javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param)voidprepareInsertEmpty(int imageIndex, javax.imageio.ImageTypeSpecifier imageType, int width, int height, javax.imageio.metadata.IIOMetadata imageMetadata, java.util.List<? extends java.awt.image.BufferedImage> thumbnails, javax.imageio.ImageWriteParam param)voidprepareReplacePixels(int imageIndex, java.awt.Rectangle region)voidprepareWriteEmpty(javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.ImageTypeSpecifier imageType, int width, int height, javax.imageio.metadata.IIOMetadata imageMetadata, java.util.List<? extends java.awt.image.BufferedImage> thumbnails, javax.imageio.ImageWriteParam param)voidprepareWriteSequence(javax.imageio.metadata.IIOMetadata streamMetadata)voidremoveImage(int imageIndex)voidreplaceImageMetadata(int imageIndex, javax.imageio.metadata.IIOMetadata imageMetadata)voidreplacePixels(java.awt.image.Raster raster, javax.imageio.ImageWriteParam param)voidreplacePixels(java.awt.image.RenderedImage image, javax.imageio.ImageWriteParam param)voidreplaceStreamMetadata(javax.imageio.metadata.IIOMetadata streamMetadata)voidreset()protected voidresetMembers()voidsetLocale(java.util.Locale locale)voidsetOutput(java.lang.Object output)voidwrite(javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param)private voidwriteCMYK(javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param)voidwriteInsert(int imageIndex, javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param)voidwriteToSequence(javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param)-
Methods inherited from class com.twelvemonkeys.imageio.ImageWriterBase
assertOutput, fakeAOI, fakeSubsampling, getFormatName, getSourceRegion
-
Methods inherited from class javax.imageio.ImageWriter
abortRequested, addIIOWriteProgressListener, addIIOWriteWarningListener, clearAbortRequest, getOriginatingProvider, processImageComplete, processImageProgress, processImageStarted, processThumbnailComplete, processThumbnailProgress, processThumbnailStarted, processWarningOccurred, processWarningOccurred, processWriteAborted, removeAllIIOWriteProgressListeners, removeAllIIOWriteWarningListeners, removeIIOWriteProgressListener, removeIIOWriteWarningListener, write, write
-
-
-
-
Field Detail
-
delegate
private final javax.imageio.ImageWriter delegate
Our JPEG writing delegate
-
progressDelegator
private final JPEGImageWriter.ProgressDelegator progressDelegator
Listens to progress updates in the delegate, and delegates back to this instance
-
-
Constructor Detail
-
JPEGImageWriter
public JPEGImageWriter(JPEGImageWriterSpi provider, javax.imageio.ImageWriter delegate)
-
-
Method Detail
-
installListeners
private void installListeners()
-
resetMembers
protected void resetMembers()
- Overrides:
resetMembersin classImageWriterBase
-
setOutput
public void setOutput(java.lang.Object output)
- Overrides:
setOutputin classImageWriterBase
-
getOutput
public java.lang.Object getOutput()
- Overrides:
getOutputin classjavax.imageio.ImageWriter
-
getAvailableLocales
public java.util.Locale[] getAvailableLocales()
- Overrides:
getAvailableLocalesin classjavax.imageio.ImageWriter
-
setLocale
public void setLocale(java.util.Locale locale)
- Overrides:
setLocalein classjavax.imageio.ImageWriter
-
getLocale
public java.util.Locale getLocale()
- Overrides:
getLocalein classjavax.imageio.ImageWriter
-
getDefaultWriteParam
public javax.imageio.ImageWriteParam getDefaultWriteParam()
- Overrides:
getDefaultWriteParamin classjavax.imageio.ImageWriter
-
getDefaultStreamMetadata
public javax.imageio.metadata.IIOMetadata getDefaultStreamMetadata(javax.imageio.ImageWriteParam param)
Description copied from class:ImageWriterBaseReturnsnull- Overrides:
getDefaultStreamMetadatain classImageWriterBase- Parameters:
param- ignored.- Returns:
null.
-
getDefaultImageMetadata
public javax.imageio.metadata.IIOMetadata getDefaultImageMetadata(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param)- Specified by:
getDefaultImageMetadatain classjavax.imageio.ImageWriter
-
convertStreamMetadata
public javax.imageio.metadata.IIOMetadata convertStreamMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageWriteParam param)Description copied from class:ImageWriterBaseReturnsnull- Specified by:
convertStreamMetadatain interfacejavax.imageio.ImageTranscoder- Overrides:
convertStreamMetadatain classImageWriterBase- Parameters:
inData- ignored.param- ignored.- Returns:
null.
-
convertImageMetadata
public javax.imageio.metadata.IIOMetadata convertImageMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param)- Specified by:
convertImageMetadatain interfacejavax.imageio.ImageTranscoder- Specified by:
convertImageMetadatain classjavax.imageio.ImageWriter
-
getNumThumbnailsSupported
public int getNumThumbnailsSupported(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param, javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.metadata.IIOMetadata imageMetadata)- Overrides:
getNumThumbnailsSupportedin classjavax.imageio.ImageWriter
-
getPreferredThumbnailSizes
public java.awt.Dimension[] getPreferredThumbnailSizes(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param, javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.metadata.IIOMetadata imageMetadata)- Overrides:
getPreferredThumbnailSizesin classjavax.imageio.ImageWriter
-
canWriteRasters
public boolean canWriteRasters()
- Overrides:
canWriteRastersin classjavax.imageio.ImageWriter
-
write
public void write(javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param) throws java.io.IOException- Specified by:
writein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
isDestinationCMYK
private boolean isDestinationCMYK(javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param)
-
writeCMYK
private void writeCMYK(javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param) throws java.io.IOException- Throws:
java.io.IOException
-
convertCMYKMetadata
private javax.imageio.metadata.IIOMetadata convertCMYKMetadata(javax.imageio.metadata.IIOMetadata original, javax.imageio.ImageTypeSpecifier destinationType, javax.imageio.ImageWriteParam param) throws javax.imageio.metadata.IIOInvalidTreeException- Throws:
javax.imageio.metadata.IIOInvalidTreeException
-
getRaster
private static java.awt.image.Raster getRaster(java.awt.image.RenderedImage image)
-
canWriteSequence
public boolean canWriteSequence()
- Overrides:
canWriteSequencein classjavax.imageio.ImageWriter
-
prepareWriteSequence
public void prepareWriteSequence(javax.imageio.metadata.IIOMetadata streamMetadata) throws java.io.IOException- Overrides:
prepareWriteSequencein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
writeToSequence
public void writeToSequence(javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param) throws java.io.IOException- Overrides:
writeToSequencein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
endWriteSequence
public void endWriteSequence() throws java.io.IOException- Overrides:
endWriteSequencein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canReplaceStreamMetadata
public boolean canReplaceStreamMetadata() throws java.io.IOException- Overrides:
canReplaceStreamMetadatain classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
replaceStreamMetadata
public void replaceStreamMetadata(javax.imageio.metadata.IIOMetadata streamMetadata) throws java.io.IOException- Overrides:
replaceStreamMetadatain classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canReplaceImageMetadata
public boolean canReplaceImageMetadata(int imageIndex) throws java.io.IOException- Overrides:
canReplaceImageMetadatain classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
replaceImageMetadata
public void replaceImageMetadata(int imageIndex, javax.imageio.metadata.IIOMetadata imageMetadata) throws java.io.IOException- Overrides:
replaceImageMetadatain classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canInsertImage
public boolean canInsertImage(int imageIndex) throws java.io.IOException- Overrides:
canInsertImagein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
writeInsert
public void writeInsert(int imageIndex, javax.imageio.IIOImage image, javax.imageio.ImageWriteParam param) throws java.io.IOException- Overrides:
writeInsertin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canRemoveImage
public boolean canRemoveImage(int imageIndex) throws java.io.IOException- Overrides:
canRemoveImagein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
removeImage
public void removeImage(int imageIndex) throws java.io.IOException- Overrides:
removeImagein classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canWriteEmpty
public boolean canWriteEmpty() throws java.io.IOException- Overrides:
canWriteEmptyin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
prepareWriteEmpty
public void prepareWriteEmpty(javax.imageio.metadata.IIOMetadata streamMetadata, javax.imageio.ImageTypeSpecifier imageType, int width, int height, javax.imageio.metadata.IIOMetadata imageMetadata, java.util.List<? extends java.awt.image.BufferedImage> thumbnails, javax.imageio.ImageWriteParam param) throws java.io.IOException- Overrides:
prepareWriteEmptyin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
endWriteEmpty
public void endWriteEmpty() throws java.io.IOException- Overrides:
endWriteEmptyin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canInsertEmpty
public boolean canInsertEmpty(int imageIndex) throws java.io.IOException- Overrides:
canInsertEmptyin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
prepareInsertEmpty
public void prepareInsertEmpty(int imageIndex, javax.imageio.ImageTypeSpecifier imageType, int width, int height, javax.imageio.metadata.IIOMetadata imageMetadata, java.util.List<? extends java.awt.image.BufferedImage> thumbnails, javax.imageio.ImageWriteParam param) throws java.io.IOException- Overrides:
prepareInsertEmptyin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
endInsertEmpty
public void endInsertEmpty() throws java.io.IOException- Overrides:
endInsertEmptyin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
canReplacePixels
public boolean canReplacePixels(int imageIndex) throws java.io.IOException- Overrides:
canReplacePixelsin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
prepareReplacePixels
public void prepareReplacePixels(int imageIndex, java.awt.Rectangle region) throws java.io.IOException- Overrides:
prepareReplacePixelsin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
replacePixels
public void replacePixels(java.awt.image.RenderedImage image, javax.imageio.ImageWriteParam param) throws java.io.IOException- Overrides:
replacePixelsin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
replacePixels
public void replacePixels(java.awt.image.Raster raster, javax.imageio.ImageWriteParam param) throws java.io.IOException- Overrides:
replacePixelsin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
endReplacePixels
public void endReplacePixels() throws java.io.IOException- Overrides:
endReplacePixelsin classjavax.imageio.ImageWriter- Throws:
java.io.IOException
-
abort
public void abort()
- Overrides:
abortin classjavax.imageio.ImageWriter
-
reset
public void reset()
- Overrides:
resetin classImageWriterBase
-
dispose
public void dispose()
- Overrides:
disposein classImageWriterBase
-
-