Class TIFFBaseJPEGCompressor
- java.lang.Object
-
- com.sun.media.imageio.plugins.tiff.TIFFCompressor
-
- com.sun.media.imageioimpl.plugins.tiff.TIFFBaseJPEGCompressor
-
- Direct Known Subclasses:
TIFFEXIFJPEGCompressor,TIFFJPEGCompressor
public abstract class TIFFBaseJPEGCompressor extends TIFFCompressor
Base class for all possible forms of JPEG compression in TIFF.
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.StringIMAGE_METADATA_NAMEprotected javax.imageio.plugins.jpeg.JPEGImageWriteParamJPEGParamImageWriteParam for JPEG writer.protected javax.imageio.metadata.IIOMetadataJPEGStreamMetadataStream metadata equivalent to a tables-only stream such as in theJPEGTables.protected javax.imageio.ImageWriterJPEGWriterThe JPEG writer.protected static java.lang.StringSTREAM_METADATA_NAMEprotected booleanwriteAbbreviatedStreamWhether to write abbreviated JPEG streams (default == false).-
Fields inherited from class com.sun.media.imageio.plugins.tiff.TIFFCompressor
compressionTagValue, compressionType, isCompressionLossless, metadata, stream, writer
-
-
Constructor Summary
Constructors Constructor Description TIFFBaseJPEGCompressor(java.lang.String compressionType, int compressionTagValue, boolean isCompressionLossless, javax.imageio.ImageWriteParam param)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intencode(byte[] b, int off, int width, int height, int[] bitsPerSample, int scanlineStride)Encodes the supplied image data, writing to the currently setImageOutputStream.protected voidfinalize()protected voidinitJPEGWriter(boolean supportsStreamMetadata, boolean supportsImageMetadata)Initializes the JPEGWriter and JPEGParam instance variables.-
Methods inherited from class com.sun.media.imageio.plugins.tiff.TIFFCompressor
getCompressionTagValue, getCompressionType, getMetadata, getStream, getWriter, isCompressionLossless, setMetadata, setStream, setWriter
-
-
-
-
Field Detail
-
STREAM_METADATA_NAME
protected static final java.lang.String STREAM_METADATA_NAME
- See Also:
- Constant Field Values
-
IMAGE_METADATA_NAME
protected static final java.lang.String IMAGE_METADATA_NAME
- See Also:
- Constant Field Values
-
JPEGParam
protected javax.imageio.plugins.jpeg.JPEGImageWriteParam JPEGParam
ImageWriteParam for JPEG writer. May be initialized byinitJPEGWriter(boolean, boolean).
-
JPEGWriter
protected javax.imageio.ImageWriter JPEGWriter
The JPEG writer. May be initialized byinitJPEGWriter(boolean, boolean).
-
writeAbbreviatedStream
protected boolean writeAbbreviatedStream
Whether to write abbreviated JPEG streams (default == false). A subclass which sets this totrueshould also initializedJPEGStreamMetadata.
-
JPEGStreamMetadata
protected javax.imageio.metadata.IIOMetadata JPEGStreamMetadata
Stream metadata equivalent to a tables-only stream such as in theJPEGTables. Default value isnull. This should be set by any subclass which setswriteAbbreviatedStreamtotrue.
-
-
Method Detail
-
initJPEGWriter
protected void initJPEGWriter(boolean supportsStreamMetadata, boolean supportsImageMetadata)Initializes the JPEGWriter and JPEGParam instance variables. This method must be called before encode() is invoked.- Parameters:
supportsStreamMetadata- Whether the JPEG writer must support JPEG native stream metadata, i.e., be capable of writing abbreviated streams.supportsImageMetadata- Whether the JPEG writer must support JPEG native image metadata.
-
encode
public final int encode(byte[] b, int off, int width, int height, int[] bitsPerSample, int scanlineStride) throws java.io.IOExceptionDescription copied from class:TIFFCompressorEncodes the supplied image data, writing to the currently setImageOutputStream.- Specified by:
encodein classTIFFCompressor- Parameters:
b- an array ofbytes containing the packed but uncompressed image data.off- the starting offset of the data to be written in the arrayb.width- the width of the rectangle of pixels to be written.height- the height of the rectangle of pixels to be written.bitsPerSample- an array ofints indicting the number of bits used to represent each image sample within a pixel.scanlineStride- the number of bytes separating each row of the input data.- Returns:
- the number of bytes written.
- Throws:
java.io.IOException- if the supplied data cannot be encoded by thisTIFFCompressor, or if any I/O error occurs during writing.
-
finalize
protected void finalize() throws java.lang.Throwable- Overrides:
finalizein classjava.lang.Object- Throws:
java.lang.Throwable
-
-