Class TIFFPackBitsCompressor
java.lang.Object
com.github.jaiimageio.plugins.tiff.TIFFCompressor
com.github.jaiimageio.impl.plugins.tiff.TIFFPackBitsCompressor
-
Field Summary
Fields inherited from class com.github.jaiimageio.plugins.tiff.TIFFCompressor
compressionTagValue, compressionType, isCompressionLossless, metadata, stream, writer
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
encode
(byte[] b, int off, int width, int height, int[] bitsPerSample, int scanlineStride) Encodes the supplied image data, writing to the currently setImageOutputStream
.private static int
packBits
(byte[] input, int inOffset, int inCount, byte[] output, int outOffset) Performs PackBits compression for a single buffer of data.Methods inherited from class com.github.jaiimageio.plugins.tiff.TIFFCompressor
dispose, getCompressionTagValue, getCompressionType, getMetadata, getStream, getWriter, isCompressionLossless, setMetadata, setStream, setWriter
-
Constructor Details
-
TIFFPackBitsCompressor
public TIFFPackBitsCompressor()
-
-
Method Details
-
packBits
private static int packBits(byte[] input, int inOffset, int inCount, byte[] output, int outOffset) Performs PackBits compression for a single buffer of data. This should be called for each row of each tile. The returned value is the offset into the output buffer after compression. -
encode
public int encode(byte[] b, int off, int width, int height, int[] bitsPerSample, int scanlineStride) throws IOException Description copied from class:TIFFCompressor
Encodes the supplied image data, writing to the currently setImageOutputStream
.- Specified by:
encode
in classTIFFCompressor
- Parameters:
b
- an array ofbyte
s 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 ofint
s 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.
-