Package com.itextpdf.io.codec
Class CCITTG4Encoder
- java.lang.Object
-
- com.itextpdf.io.codec.CCITTG4Encoder
-
public class CCITTG4Encoder extends java.lang.ObjectEncodes data in the CCITT G4 FAX format.
-
-
Field Summary
Fields Modifier and Type Field Description private intbitprivate static intCODEprivate intdataprivate byte[]dataBpprivate static intEOLprivate static intG3CODE_EOFprivate static intG3CODE_EOLprivate static intG3CODE_INCOMPprivate static intG3CODE_INVALIDprivate int[]horizcodeprivate static intLENGTHprivate int[]msbmaskprivate intoffsetDataprivate static byte[]onerunsprivate ByteBufferoutBufprivate int[]passcodeprivate byte[]reflineprivate introwbytesprivate introwpixelsprivate static intRUNLENprivate intsizeDataprivate int[][]TIFFFaxBlackCodesprivate int[][]TIFFFaxWhiteCodesprivate int[][]vcodesprivate static byte[]zeroruns
-
Constructor Summary
Constructors Constructor Description CCITTG4Encoder(int width)Creates a new encoder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]close()Closes the encoder and returns the encoded data.static byte[]compress(byte[] data, int width, int height)Encodes a full image.private voidFax3Encode2DRow()voidfax4Encode(byte[] data, int height)Encodes a number of lines.voidfax4Encode(byte[] data, int offset, int size)Encodes a number of lines.private voidFax4PostEncode()private static intfind0span(byte[] bp, int offset, int bs, int be)private static intfind1span(byte[] bp, int offset, int bs, int be)private static intfinddiff(byte[] bp, int offset, int bs, int be, int color)private static intfinddiff2(byte[] bp, int offset, int bs, int be, int color)private intpixel(byte[] data, int offset, int bit)private voidputBits(int bits, int length)private voidputcode(int[] table)private voidputspan(int span, int[][] tab)
-
-
-
Field Detail
-
rowbytes
private int rowbytes
-
rowpixels
private int rowpixels
-
bit
private int bit
-
data
private int data
-
refline
private byte[] refline
-
outBuf
private ByteBuffer outBuf
-
dataBp
private byte[] dataBp
-
offsetData
private int offsetData
-
sizeData
private int sizeData
-
zeroruns
private static byte[] zeroruns
-
oneruns
private static byte[] oneruns
-
LENGTH
private static final int LENGTH
- See Also:
- Constant Field Values
-
CODE
private static final int CODE
- See Also:
- Constant Field Values
-
RUNLEN
private static final int RUNLEN
- See Also:
- Constant Field Values
-
EOL
private static final int EOL
- See Also:
- Constant Field Values
-
G3CODE_EOL
private static final int G3CODE_EOL
- See Also:
- Constant Field Values
-
G3CODE_INVALID
private static final int G3CODE_INVALID
- See Also:
- Constant Field Values
-
G3CODE_EOF
private static final int G3CODE_EOF
- See Also:
- Constant Field Values
-
G3CODE_INCOMP
private static final int G3CODE_INCOMP
- See Also:
- Constant Field Values
-
TIFFFaxWhiteCodes
private int[][] TIFFFaxWhiteCodes
-
TIFFFaxBlackCodes
private int[][] TIFFFaxBlackCodes
-
horizcode
private int[] horizcode
-
passcode
private int[] passcode
-
vcodes
private int[][] vcodes
-
msbmask
private int[] msbmask
-
-
Method Detail
-
fax4Encode
public void fax4Encode(byte[] data, int offset, int size)Encodes a number of lines.- Parameters:
data- the data to be encodedoffset- the offset into the datasize- the size of the data to be encoded
-
compress
public static byte[] compress(byte[] data, int width, int height)Encodes a full image.- Parameters:
data- the data to encodewidth- the image widthheight- the image height- Returns:
- the encoded image
-
fax4Encode
public void fax4Encode(byte[] data, int height)Encodes a number of lines.- Parameters:
data- the data to be encodedheight- the number of lines to encode
-
putcode
private void putcode(int[] table)
-
putspan
private void putspan(int span, int[][] tab)
-
putBits
private void putBits(int bits, int length)
-
Fax3Encode2DRow
private void Fax3Encode2DRow()
-
Fax4PostEncode
private void Fax4PostEncode()
-
close
public byte[] close()
Closes the encoder and returns the encoded data.- Returns:
- the encoded data
-
pixel
private int pixel(byte[] data, int offset, int bit)
-
find1span
private static int find1span(byte[] bp, int offset, int bs, int be)
-
find0span
private static int find0span(byte[] bp, int offset, int bs, int be)
-
finddiff
private static int finddiff(byte[] bp, int offset, int bs, int be, int color)
-
finddiff2
private static int finddiff2(byte[] bp, int offset, int bs, int be, int color)
-
-