Package com.aowagie.text.pdf.codec
Class JBIG2SegmentReader
- java.lang.Object
-
- com.aowagie.text.pdf.codec.JBIG2SegmentReader
-
class JBIG2SegmentReader extends java.lang.Object
Class to read a JBIG2 file at a basic level: understand all the segments, understand what segments belong to which pages, how many pages there are, what the width and height of each page is, and global segments if there are any. Or: the minimum required to be able to take a normal sequential or random-access organized file, and be able to embed JBIG2 pages as images in a PDF. TODO: the indeterminate-segment-size value of dataLength, else?- Since:
- 2.1.5
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JBIG2SegmentReader.JBIG2Page
Inner class that holds information about a JBIG2 page.private static class
JBIG2SegmentReader.JBIG2Segment
Inner class that holds information about a JBIG2 segment.
-
Field Summary
Fields Modifier and Type Field Description private static int
END_OF_FILE
private static int
END_OF_PAGE
private java.util.SortedSet
globals
private int
number_of_pages
private boolean
number_of_pages_known
private static int
PAGE_INFORMATION
private java.util.SortedMap
pages
private RandomAccessFileOrArray
ra
private boolean
read
private java.util.SortedMap
segments
private boolean
sequential
-
Constructor Summary
Constructors Constructor Description JBIG2SegmentReader(RandomAccessFileOrArray ra)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static byte[]
copyByteArray(byte[] b)
(package private) byte[]
getGlobal(boolean for_embedding)
(package private) JBIG2SegmentReader.JBIG2Page
getPage(int page)
private int
numberOfPages()
void
read()
private void
readFileHeader()
private JBIG2SegmentReader.JBIG2Segment
readHeader()
private void
readSegment(JBIG2SegmentReader.JBIG2Segment s)
java.lang.String
toString()
-
-
-
Field Detail
-
PAGE_INFORMATION
private static final int PAGE_INFORMATION
- See Also:
- Constant Field Values
-
END_OF_PAGE
private static final int END_OF_PAGE
- See Also:
- Constant Field Values
-
END_OF_FILE
private static final int END_OF_FILE
- See Also:
- Constant Field Values
-
segments
private final java.util.SortedMap segments
-
pages
private final java.util.SortedMap pages
-
globals
private final java.util.SortedSet globals
-
ra
private final RandomAccessFileOrArray ra
-
sequential
private boolean sequential
-
number_of_pages_known
private boolean number_of_pages_known
-
number_of_pages
private int number_of_pages
-
read
private boolean read
-
-
Constructor Detail
-
JBIG2SegmentReader
public JBIG2SegmentReader(RandomAccessFileOrArray ra) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
copyByteArray
private static byte[] copyByteArray(byte[] b)
-
read
public void read() throws java.io.IOException
- Throws:
java.io.IOException
-
readSegment
private void readSegment(JBIG2SegmentReader.JBIG2Segment s) throws java.io.IOException
- Throws:
java.io.IOException
-
readHeader
private JBIG2SegmentReader.JBIG2Segment readHeader() throws java.io.IOException
- Throws:
java.io.IOException
-
readFileHeader
private void readFileHeader() throws java.io.IOException
- Throws:
java.io.IOException
-
numberOfPages
private int numberOfPages()
-
getPage
JBIG2SegmentReader.JBIG2Page getPage(int page)
-
getGlobal
byte[] getGlobal(boolean for_embedding)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-