Package com.twelvemonkeys.io.enc
Class PackBitsEncoder
- java.lang.Object
-
- com.twelvemonkeys.io.enc.PackBitsEncoder
-
- All Implemented Interfaces:
Encoder
public final class PackBitsEncoder extends java.lang.Object implements Encoder
Encoder implementation for Apple PackBits run-length encoding.From Wikipedia, the free encyclopedia
PackBits is a fast, simple compression scheme for run-length encoding of data.Apple introduced the PackBits format with the release of MacPaint on the Macintosh computer. This compression scheme is one of the types of compression that can be used in TIFF-files.
A PackBits data stream consists of packets of one byte of header followed by data. The header is a signed byte; the data can be signed, unsigned, or packed (such as MacPaint pixels).
PackBits Header byte Data 0 to 127 1 + n literal bytes of data 0 to -127 One byte of data, repeated 1 - n times in the decompressed output -128 No operation Note that interpreting 0 as positive or negative makes no difference in the output. Runs of two bytes adjacent to non-runs are typically written as literal data.
- Version:
- $Id: //depot/branches/personal/haraldk/twelvemonkeys/release-2/twelvemonkeys-core/src/main/java/com/twelvemonkeys/io/enc/PackBitsEncoder.java#1 $
- Author:
- Harald Kuhr
- See Also:
- Understanding PackBits
-
-
Constructor Summary
Constructors Constructor Description PackBitsEncoder()
Creates aPackBitsEncoder
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
encode(java.io.OutputStream stream, java.nio.ByteBuffer buffer)
Encodes up tobuffer.remaining()
bytes into the given input stream, from the given buffer.
-
-
-
Method Detail
-
encode
public void encode(java.io.OutputStream stream, java.nio.ByteBuffer buffer) throws java.io.IOException
Description copied from interface:Encoder
Encodes up tobuffer.remaining()
bytes into the given input stream, from the given buffer.
-
-