Class TIFFBaseJPEGCompressor

    • 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 by initJPEGWriter(boolean, boolean).
      • writeAbbreviatedStream

        protected boolean writeAbbreviatedStream
        Whether to write abbreviated JPEG streams (default == false). A subclass which sets this to true should also initialized JPEGStreamMetadata.
      • JPEGStreamMetadata

        protected javax.imageio.metadata.IIOMetadata JPEGStreamMetadata
        Stream metadata equivalent to a tables-only stream such as in the JPEGTables. Default value is null. This should be set by any subclass which sets writeAbbreviatedStream to true.
    • Constructor Detail

      • TIFFBaseJPEGCompressor

        public TIFFBaseJPEGCompressor​(java.lang.String compressionType,
                                      int compressionTagValue,
                                      boolean isCompressionLossless,
                                      javax.imageio.ImageWriteParam param)
    • 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.IOException
        Description copied from class: TIFFCompressor
        Encodes the supplied image data, writing to the currently set ImageOutputStream.
        Specified by:
        encode in class TIFFCompressor
        Parameters:
        b - an array of bytes containing the packed but uncompressed image data.
        off - the starting offset of the data to be written in the array b.
        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 of ints 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 this TIFFCompressor, or if any I/O error occurs during writing.
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable