Class TIFFBaseJPEGCompressor
java.lang.Object
com.sun.media.imageio.plugins.tiff.TIFFCompressor
com.sun.media.imageioimpl.plugins.tiff.TIFFBaseJPEGCompressor
- Direct Known Subclasses:
TIFFEXIFJPEGCompressor,TIFFJPEGCompressor
Base class for all possible forms of JPEG compression in TIFF.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected JPEGImageWriteParamImageWriteParam for JPEG writer.protected IIOMetadataStream metadata equivalent to a tables-only stream such as in theJPEGTables.protected ImageWriterThe JPEG writer.protected static final Stringprotected booleanWhether 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
ConstructorsConstructorDescriptionTIFFBaseJPEGCompressor(String compressionType, int compressionTagValue, boolean isCompressionLossless, ImageWriteParam param) -
Method Summary
Modifier and TypeMethodDescriptionfinal 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 Details
-
STREAM_METADATA_NAME
- See Also:
-
IMAGE_METADATA_NAME
- See Also:
-
JPEGParam
ImageWriteParam for JPEG writer. May be initialized byinitJPEGWriter(boolean, boolean). -
JPEGWriter
The JPEG writer. May be initialized byinitJPEGWriter(boolean, boolean). -
writeAbbreviatedStream
protected boolean writeAbbreviatedStreamWhether to write abbreviated JPEG streams (default == false). A subclass which sets this totrueshould also initializedJPEGStreamMetadata. -
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.
-
-
Constructor Details
-
TIFFBaseJPEGCompressor
public TIFFBaseJPEGCompressor(String compressionType, int compressionTagValue, boolean isCompressionLossless, ImageWriteParam param)
-
-
Method Details
-
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 IOException Description 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:
IOException- if the supplied data cannot be encoded by thisTIFFCompressor, or if any I/O error occurs during writing.
-
finalize
-