Package com.aowagie.text.pdf
Class LZWDecoder
java.lang.Object
com.aowagie.text.pdf.LZWDecoder
A class for performing LZW decoding.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int[]private intprivate intprivate intprivate byte[]private intprivate intprivate byte[][]private intprivate OutputStream -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddStringToTable(byte[] string) Add a new string to the string table.private voidaddStringToTable(byte[] oldString, byte newString) Add a new string to the string table.private byte[]composeString(byte[] oldString, byte newString) AppendnewStringto the end ofoldString.voiddecode(byte[] data, OutputStream uncompData) Method to decode LZW compressed data.intprivate voidInitialize the string table.private voidwriteString(byte[] string) Write out the string just uncompressed.
-
Field Details
-
stringTable
private byte[][] stringTable -
data
private byte[] data -
uncompData
-
tableIndex
private int tableIndex -
bitsToGet
private int bitsToGet -
bytePointer
private int bytePointer -
bitPointer
private int bitPointer -
nextData
private int nextData -
nextBits
private int nextBits -
andTable
private final int[] andTable
-
-
Constructor Details
-
LZWDecoder
public LZWDecoder()
-
-
Method Details
-
decode
Method to decode LZW compressed data.- Parameters:
data- The compressed data.uncompData- Array to return the uncompressed data in.
-
initializeStringTable
private void initializeStringTable()Initialize the string table. -
writeString
private void writeString(byte[] string) Write out the string just uncompressed. -
addStringToTable
private void addStringToTable(byte[] oldString, byte newString) Add a new string to the string table. -
addStringToTable
private void addStringToTable(byte[] string) Add a new string to the string table. -
composeString
private byte[] composeString(byte[] oldString, byte newString) AppendnewStringto the end ofoldString. -
getNextCode
public int getNextCode()
-