Class JBIG2SegmentReader


  • public 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
    • Field Detail

      • INTERMEDIATE_TEXT_REGION

        public static final int INTERMEDIATE_TEXT_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_LOSSLESS_TEXT_REGION

        public static final int IMMEDIATE_LOSSLESS_TEXT_REGION
        See Also:
        Constant Field Values
      • INTERMEDIATE_HALFTONE_REGION

        public static final int INTERMEDIATE_HALFTONE_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_HALFTONE_REGION

        public static final int IMMEDIATE_HALFTONE_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_LOSSLESS_HALFTONE_REGION

        public static final int IMMEDIATE_LOSSLESS_HALFTONE_REGION
        See Also:
        Constant Field Values
      • INTERMEDIATE_GENERIC_REGION

        public static final int INTERMEDIATE_GENERIC_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_GENERIC_REGION

        public static final int IMMEDIATE_GENERIC_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_LOSSLESS_GENERIC_REGION

        public static final int IMMEDIATE_LOSSLESS_GENERIC_REGION
        See Also:
        Constant Field Values
      • INTERMEDIATE_GENERIC_REFINEMENT_REGION

        public static final int INTERMEDIATE_GENERIC_REFINEMENT_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_GENERIC_REFINEMENT_REGION

        public static final int IMMEDIATE_GENERIC_REFINEMENT_REGION
        See Also:
        Constant Field Values
      • IMMEDIATE_LOSSLESS_GENERIC_REFINEMENT_REGION

        public static final int IMMEDIATE_LOSSLESS_GENERIC_REFINEMENT_REGION
        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
      • 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

        public static byte[] copyByteArray​(byte[] b)
      • read

        public void read()
                  throws java.io.IOException
        Throws:
        java.io.IOException
      • readFileHeader

        void readFileHeader()
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • numberOfPages

        public int numberOfPages()
      • getPageHeight

        public int getPageHeight​(int i)
      • getPageWidth

        public int getPageWidth​(int i)
      • getGlobal

        public byte[] getGlobal​(boolean for_embedding)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object