itext.io Came from GIFEncoder initially. Came from GIFEncoder initially. Modified - to allow for output compressed data without the block counts which breakup the compressed data stream for GIF. note this also indicates gif format BITFile. destination for output data GIF LZW requires block counts for output data Bit reading helpers. Input byte buffer, consist of a ring-buffer and a "slack" region where bytes from the start of the ring-buffer are copied. Input stream is finished. Pre-fetched bits. Current bit-reading position in accumulator. Offset of next item in intBuffer. Advances the Read buffer by 5 bytes to make room for reading next 24 bits. Reads the specified number of bits from Read Buffer. Internal buffer used for efficient byte-by-byte reading. Number of decoded but still unused bytes in internal buffer. Next unused byte offset. Decoder state. Unchecked exception used internally. Common context lookup table for all context modes. API for Brotli decompression. Static Huffman code for the code length code lengths. Decodes a number in the range [0..255], by reading 1 - 11 bits. Decodes the next Huffman code from bit-stream. Reads next metablock header. decoding state Actual decompress implementation. Utilities for building Huffman decoding tables. Maximum possible Huffman table size for an alphabet size of 704, max code length 15 and root table bits 8. histogram of bit lengths for the remaining symbols, code length of the next processed symbol. table width of the next 2nd level table. Builds Huffman lookup table assuming code lengths are in symbol order. Contains a collection of huffman trees with the same alphabet size. The maximal alphabet size in this group. Storage for Huffman lookup tables. Offsets of distinct lookup tables in storage. Initializes the Huffman tree group. POJO to be initialised the maximal alphabet size in this group number of Huffman codes Decodes Huffman trees from input stream and constructs lookup tables. target POJO data source Byte-to-int conversion magic. Translates bytes to ints. Translates bytes to ints. NB: intLen == 4 * byteSize! NB: intLen should be less or equal to intBuffer length. Enumeration of decoding state-machine. Associate input with decoder state. uninitialized state without associated input compressed data source Transformations on dictionary words. A set of utility methods. Encodes data in the CCITT G4 FAX format. Creates a new encoder. the line width Encodes a number of lines. the data to be encoded the offset into the data the size of the data to be encoded Encodes a full image. the data to encode the image width the image height the encoded image Encodes a number of lines. the data to be encoded the number of lines to encode Closes the encoder and returns the encoded data. the encoded data 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. 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? Inner class that holds information about a JBIG2 segment. Inner class that holds information about a JBIG2 page. return as a single byte array the header-data for each segment in segment number order, EMBEDDED organization, but I am putting the needed segments in SEQUENTIAL organization. return as a single byte array the header-data for each segment in segment number order, EMBEDDED organization, but I am putting the needed segments in SEQUENTIAL organization. if for_embedding, skip the segment types that are known to be not for acrobat. True if the bytes represents embedded data, false otherwise a byte array Modified from original LZWCompressor to change interface to passing a buffer of data to be compressed. base underlying code size of data being compressed 8 for TIFF, 1 to 8 for GIF reserved clear code based on code size reserved end of data code based on code size current number bits output for each code limit at which current number of bits code size has to be increased the prefix code which represents the predecessor string to current input point output destination for bit codes general purpose LZW string table modify the limits of the code values in LZW encoding due to TIFF bug / feature destination for compressed data the initial code size for the LZW compressor flag indicating that TIFF lzw fudge needs to be applied The data to be compressed to output stream The offset at which the data starts The length of the data being compressed Indicate to compressor that no more data to go so write out any remaining buffered data. General purpose LZW String Table. General purpose LZW String Table. Extracted from GIFEncoder by Adam Doppelt Comments added by Robin Luiten expandCode added by Robin Luiten The strLen_ table to give quick access to the lenght of an expanded code for use by the expandCode method added by Robin. codesize + Reserved Codes each entry corresponds to a code and contains the length of data that the code expands to when decoded. Constructor allocate memory for string store data value of -1 indicates no predecessor [used in initialization] the byte [character] to add to the string store which follows the predecessor string specified the index. 0xFFFF if no space in table left for addition of predecessor index and byte b. Else return the code allocated for combination index + b. index to prefix string the character that follws the index prefix b if param index is HASH_FREE. Else return the code for this prefix and byte successor the size of code to be preallocated for the string store. If expanded data doesn't fit into array only what will fit is written to buf and the return value indicates how much of the expanded code has been written to the buf. If expanded data doesn't fit into array only what will fit is written to buf and the return value indicates how much of the expanded code has been written to the buf. The next call to expandCode() should be with the same code and have the skip parameter set the negated value of the previous return. Successive negative return values should be negated and added together for next skip parameter value with same code. buffer to place expanded data into offset to place expanded data the code to expand to the byte array it represents. PRECONDITION This code must already be in the LZSS is the number of bytes at the start of the expanded code to be skipped before data is written to buf. It is possible that skipHead is equal to codeLen. the length of data expanded into buf. If the expanded code is longer than space left in buf then the value returned is a negative number which when negated is equal to the number of bytes that were used of the code being expanded. This negative value also indicates the buffer is full. Writes a PNG image. A list of constants used in class TIFFImage. subfile data descriptor reduced resolution version one page of many transparency mask +kind of data in subfile full resolution image data reduced size image data one page of many image width in pixels image height in pixels bits per channel (sample) data compression technique dump mode CCITT modified Huffman RLE CCITT Group 3 fax encoding CCITT Group 4 fax encoding Lempel-Ziv & Welch !6.0 JPEG %JPEG DCT compression NeXT 2-bit RLE #1 w/ word alignment Macintosh RLE ThunderScan RLE IT8 CT w/padding IT8 Linework RLE IT8 Monochrome picture IT8 Binary line art Pixar companded 10bit LZW Pixar companded 11bit ZIP Deflate compression Deflate compression, as recognized by Adobe Kodak DCS encoding ISO JBIG SGI Log Luminance RLE SGI Log 24-bit packed photometric interpretation min value is white min value is black RGB color model color map indexed $holdout mask !color separations !CCIR 601 !1976 CIE L*a*b CIE Log2(L) CIE Log2(L) (u',v') +thresholding used on data b&w art scan or dithered scan usually floyd-steinberg +dithering matrix width +dithering matrix height data order within a byte most significant -> least least significant -> most name of doc. name of doc. image is from info about image scanner manufacturer name scanner model name/number offsets to data strips +image orientation row 0 top, col 0 lhs row 0 top, col 0 rhs row 0 bottom, col 0 rhs row 0 bottom, col 0 lhs row 0 lhs, col 0 top row 0 rhs, col 0 top row 0 rhs, col 0 bottom row 0 lhs, col 0 bottom samples per pixel rows per strip of data bytes counts for strips +minimum sample value +maximum sample value pixels/resolution in x pixels/resolution in y storage organization single image plane separate planes of data page name image is from x page offset of image lhs y page offset of image lhs +byte offset to free block +sizes of free blocks $gray scale curve accuracy tenths of a unit hundredths of a unit thousandths of a unit ten-thousandths of a unit hundred-thousandths $gray scale response curve 32 flag bits 2-dimensional coding data not compressed fill to byte boundary 32 flag bits data not compressed fill to byte boundary units of resolutions no meaningful units english metric page numbers of multi-page $color curve accuracy tenths of a unit hundredths of a unit thousandths of a unit ten-thousandths of a unit hundred-thousandths !colorimetry info name and release creation date and time creator of image machine where created prediction scheme w/ LZW no predictor horizontal differencing image white point !primary chromaticities RGB map for pallette image !highlight+shadow info !rows/data tile !cols/data tile !offsets to data tiles !byte counts for tiles lines w/ wrong pixel count regenerated line info no errors detected receiver regenerated lines uncorrected errors exist max consecutive bad lines subimage descriptors !inks in separated image !cyan-magenta-yellow-black !ascii names of inks !number of inks !0% and 100% dot codes !separation target !info about extra samples !unspecified data !associated alpha data !unassociated alpha data !data sample format !unsigned integer data !signed integer data !IEEE floating point data !untyped data !complex signed int !complex ieee floating !variable MinSampleValue !variable MaxSampleValue %JPEG table stream !JPEG processing algorithm !baseline sequential !Huffman coded lossless !pointer to SOI marker !JFIF stream length !restart interval length !lossless proc predictor !lossless point transform !Q matrice offsets !DCT table offsets !AC coefficient offsets !RGB -> YCbCr transform !YCbCr subsampling factors !subsample positioning !as in PostScript Level 2 !as in CCIR 601-1 !colorimetry info image reference points region-xform tack point warp quadrilateral affine transformation mat $use ExtraSamples $use SampleFormat z depth of image z depth/data tile full image size in x full image size in y texture map format s & t wrap modes cotan(fov) for env. cotan(fov) for env. maps W2S W2C device serial number tag 33405 is a private tag registered to Eastman Kodak tag 33432 is listed in the 6.0 spec w/ unknown ownership IPTC TAG from RichTIFF specifications site name color seq. color seq. [RGB,CMYK,etc] DDES Header raster scanline padding # of bits in short run # of bits in long run LW colortable BP/BL image color switch BP/BL bg color switch BP/BL image color value BP/BL bg color value MP pixel intensity value HC transparency switch color character. color character. table Sequence Frame Count ICC profile data tag 34750 is a private tag registered to Adobe? tag 34377 is private tag registered to Adobe for PhotoShop JBIG options tag 34750 is a private tag registered to Pixel Magic encoded Class 2 ses. encoded Class 2 ses. parms received SubAddr string receive time (secs) Sample value to Nits unknown use tag 34929 is a private tag registered to FedEx hue shift correction data tag 65535 is an undefined tag used by Eastman Kodak A class representing an Image File Directory (IFD) from a TIFF 6.0 stream. A class representing an Image File Directory (IFD) from a TIFF 6.0 stream. The TIFF file format is described in more detail in the comments for the TIFFDescriptor class.
A TIFF IFD consists of a set of TIFFField tags. Methods are provided to query the set of tags and to obtain the raw field array. In addition, convenience methods are provided for acquiring the values of tags that contain a single value that fits into a byte, int, long, float, or double.
Every TIFF file is made up of one or more public IFDs that are joined in a linked list, rooted in the file header. A file may also contain so-called private IFDs that are referenced from tag data and do not appear in the main list.
This class is not a committed part of the JAI API. It may be removed or changed in future releases of JAI.
A boolean storing the endianness of the stream. The number of entries in the IFD. An array of TIFFFields. A Hashtable indexing the fields by tag number. The offset of this IFD. The offset of the next IFD. The default constructor. Constructs a TIFFDirectory from a SeekableStream. Constructs a TIFFDirectory from a SeekableStream. The directory parameter specifies which directory to read from the linked list present in the stream; directory 0 is normally read but it is possible to store multiple images in a single TIFF file by maintaining multiple directories. a SeekableStream to read from. the index of the directory to read. Constructs a TIFFDirectory by reading a SeekableStream. Constructs a TIFFDirectory by reading a SeekableStream. The ifd_offset parameter specifies the stream offset from which to begin reading; this mechanism is sometimes used to store private IFDs within a TIFF file that are not part of the normal sequence of IFDs. a SeekableStream to read from. the long byte offset of the directory. the index of the directory to read beyond the one at the current stream offset; zero indicates the IFD at the current offset. Returns the number of directory entries. The number of directory entries Returns the value of a given tag as a TIFFField, or null if the tag is not present. The tag The value of the given tag as a TIFFField or null Returns true if a tag appears in the directory. The tag True if the tag appears in the directory, false otherwise Returns an ordered array of integers indicating the tags values. an ordered array of integers indicating the tags Returns an array of TIFFFields containing all the fields in this directory. an array of TIFFFields containing all the fields in this directory Returns the value of a particular index of a given tag as a byte. Returns the value of a particular index of a given tag as a byte. The caller is responsible for ensuring that the tag is present and has type TIFFField.TIFF_SBYTE, TIFF_BYTE, or TIFF_UNDEFINED. The tag The index the value of a particular index of a given tag as a byte Returns the value of index 0 of a given tag as a byte. Returns the value of index 0 of a given tag as a byte. The caller is responsible for ensuring that the tag is present and has type TIFFField.TIFF_SBYTE, TIFF_BYTE, or TIFF_UNDEFINED. The tag The value of index 0 of the given tag as a byte Returns the value of a particular index of a given tag as a long. Returns the value of a particular index of a given tag as a long. The caller is responsible for ensuring that the tag is present and has type TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, TIFF_SLONG or TIFF_LONG. The tag The index The value of the given index of the given tag as a long Returns the value of index 0 of a given tag as a long. Returns the value of index 0 of a given tag as a long. The caller is responsible for ensuring that the tag is present and has type TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, TIFF_SLONG or TIFF_LONG. The tag The value of index 0 of the given tag as a long Returns the value of a particular index of a given tag as a float. Returns the value of a particular index of a given tag as a float. The caller is responsible for ensuring that the tag is present and has numeric type (all but TIFF_UNDEFINED and TIFF_ASCII). The tag The index The value of the given index of the given tag as a float Returns the value of index 0 of a given tag as a float. Returns the value of index 0 of a given tag as a float. The caller is responsible for ensuring that the tag is present and has numeric type (all but TIFF_UNDEFINED and TIFF_ASCII). The tag The value of index 0 of the given tag as a float Returns the value of a particular index of a given tag as a double. Returns the value of a particular index of a given tag as a double. The caller is responsible for ensuring that the tag is present and has numeric type (all but TIFF_UNDEFINED and TIFF_ASCII). The tag The index The value of the given index of the given tag as a double Returns the value of index 0 of a given tag as a double. Returns the value of index 0 of a given tag as a double. The caller is responsible for ensuring that the tag is present and has numeric type (all but TIFF_UNDEFINED and TIFF_ASCII). The tag The value of index 0 of the given tag as a double Returns the number of image directories (subimages) stored in a given TIFF file, represented by a SeekableStream. RandomAccessFileOrArray The number of image directories (subimages) stored in a given TIFF file Returns a boolean indicating whether the byte order used in the the TIFF file is big-endian (i.e. whether the byte order is from the most significant to the least significant) Returns the offset of the IFD corresponding to this TIFFDirectory. Returns the offset of the next IFD after the IFD corresponding to this TIFFDirectory. Class that can decode TIFF files. The fill order of the compressed data bytes. width height Reverses the bits in the array the bits to reverse Class that can decompress TIFF files. The logical order of bits within a byte. The logical order of bits within a byte.
            1 = MSB-to-LSB
            2 = LSB-to-MSB (flipped)
            
Uncompressed mode flag: 1 if uncompressed, 0 if not. EOL padding flag: 1 if fill bits have been added before an EOL such that the EOL ends on a byte boundary, 0 otherwise. Coding dimensionality: 1 for 2-dimensional, 0 for 1-dimensional. Invokes the superclass method and then sets instance variables on the basis of the metadata set on this decompressor. The fill order The compression algorithm The T4 options The T6 options A class representing a field in a TIFF 6.0 Image File Directory. A class representing a field in a TIFF 6.0 Image File Directory. The TIFF file format is described in more detail in the comments for the TIFFDescriptor class. A field in a TIFF Image File Directory (IFD). A field is defined as a sequence of values of identical data type. TIFF 6.0 defines 12 data types, which are mapped internally onto the Java data types byte, int, long, float, and double. This class is not a committed part of the JAI API. It may be removed or changed in future releases of JAI. Flag for 8 bit unsigned integers. Flag for null-terminated ASCII strings. Flag for 16 bit unsigned integers. Flag for 32 bit unsigned integers. Flag for pairs of 32 bit unsigned integers. Flag for 8 bit signed integers. Flag for 8 bit uninterpreted bytes. Flag for 16 bit signed integers. Flag for 32 bit signed integers. Flag for pairs of 32 bit signed integers. Flag for 32 bit IEEE floats. Flag for 64 bit IEEE doubles. The tag number. The tag type. The number of data items present in the field. The field data. The default constructor. Constructs a TIFFField with arbitrary data. Constructs a TIFFField with arbitrary data. The data parameter must be an array of a Java type appropriate for the type of the TIFF field. Since there is no available 32-bit unsigned data type, long is used. The mapping between types is as follows:
TIFF type Java type
TIFF_BYTE byte
TIFF_ASCII String
TIFF_SHORT char
TIFF_LONG long
TIFF_RATIONAL long[2]
TIFF_SBYTE byte
TIFF_UNDEFINED byte
TIFF_SSHORT short
TIFF_SLONG int
TIFF_SRATIONAL int[2]
TIFF_FLOAT float
TIFF_DOUBLE double
The tag
Returns the tag number the tag number, between 0 and 65535. Returns the type of the data stored in the IFD. Returns the type of the data stored in the IFD. For a TIFF6.0 file, the value will equal one of the TIFF_ constants defined in this class. For future revisions of TIFF, higher values are possible. The type of the data stored in the IFD Returns the number of elements in the IFD. The number of elements in the IFD Returns the data as an uninterpreted array of bytes. Returns the data as an uninterpreted array of bytes. The type of the field must be one of TIFF_BYTE, TIFF_SBYTE, or TIFF_UNDEFINED; For data in TIFF_BYTE format, the application must take care when promoting the data to longer integral types to avoid sign extension. A ClassCastException will be thrown if the field is not of type TIFF_BYTE, TIFF_SBYTE, or TIFF_UNDEFINED. the data as an uninterpreted array of bytes Returns TIFF_SHORT data as an array of chars (unsigned 16-bit integers). Returns TIFF_SHORT data as an array of chars (unsigned 16-bit integers). A ClassCastException will be thrown if the field is not of type TIFF_SHORT. TIFF_SHORT data as an array of chars Returns TIFF_SSHORT data as an array of shorts (signed 16-bit integers). Returns TIFF_SSHORT data as an array of shorts (signed 16-bit integers). A ClassCastException will be thrown if the field is not of type TIFF_SSHORT. Returns TIFF_SLONG data as an array of ints (signed 32-bit integers). Returns TIFF_SLONG data as an array of ints (signed 32-bit integers). A ClassCastException will be thrown if the field is not of type TIFF_SLONG. Returns TIFF_LONG data as an array of longs (signed 64-bit integers). Returns TIFF_LONG data as an array of longs (signed 64-bit integers). A ClassCastException will be thrown if the field is not of type TIFF_LONG. Returns TIFF_FLOAT data as an array of floats. Returns TIFF_FLOAT data as an array of floats. A ClassCastException will be thrown if the field is not of type TIFF_FLOAT. Returns TIFF_DOUBLE data as an array of doubles. Returns TIFF_DOUBLE data as an array of doubles. A ClassCastException will be thrown if the field is not of type TIFF_DOUBLE. Returns TIFF_ASCII data as an array of strings. Returns TIFF_ASCII data as an array of strings. A ClassCastException will be thrown if the field is not of type TIFF_ASCII. Returns TIFF_SRATIONAL data as an array of 2-element arrays of ints. Returns TIFF_SRATIONAL data as an array of 2-element arrays of ints. A ClassCastException will be thrown if the field is not of type TIFF_SRATIONAL. Returns TIFF_RATIONAL data as an array of 2-element arrays of longs. Returns TIFF_RATIONAL data as an array of 2-element arrays of longs. A ClassCastException will be thrown if the field is not of type TIFF_RATTIONAL. Returns data in TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, or TIFF_SLONG format as an int. Returns data in TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, or TIFF_SLONG format as an int. TIFF_BYTE and TIFF_UNDEFINED data are treated as unsigned; that is, no sign extension will take place and the returned value will be in the range [0, 255]. TIFF_SBYTE data will be returned in the range [-128, 127]. A ClassCastException will be thrown if the field is not of type TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, or TIFF_SLONG. The index Returns data in TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, TIFF_SLONG, or TIFF_LONG format as a long. Returns data in TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, TIFF_SLONG, or TIFF_LONG format as a long. TIFF_BYTE and TIFF_UNDEFINED data are treated as unsigned; that is, no sign extension will take place and the returned value will be in the range [0, 255]. TIFF_SBYTE data will be returned in the range [-128, 127]. A ClassCastException will be thrown if the field is not of type TIFF_BYTE, TIFF_SBYTE, TIFF_UNDEFINED, TIFF_SHORT, TIFF_SSHORT, TIFF_SLONG, or TIFF_LONG. The index Returns data in any numerical format as a float. Returns data in any numerical format as a float. Data in TIFF_SRATIONAL or TIFF_RATIONAL format are evaluated by dividing the numerator into the denominator using double-precision arithmetic and then truncating to single precision. Data in TIFF_SLONG, TIFF_LONG, or TIFF_DOUBLE format may suffer from truncation. A ClassCastException will be thrown if the field is of type TIFF_UNDEFINED or TIFF_ASCII. The index Returns data in any numerical format as a float. Returns data in any numerical format as a float. Data in TIFF_SRATIONAL or TIFF_RATIONAL format are evaluated by dividing the numerator into the denominator using double-precision arithmetic. A ClassCastException will be thrown if the field is of type TIFF_UNDEFINED or TIFF_ASCII. The index Returns a TIFF_ASCII data item as a String. Returns a TIFF_ASCII data item as a String. A ClassCastException will be thrown if the field is not of type TIFF_ASCII. The index Returns a TIFF_SRATIONAL data item as a two-element array of ints. Returns a TIFF_SRATIONAL data item as a two-element array of ints. A ClassCastException will be thrown if the field is not of type TIFF_SRATIONAL. The index Returns a TIFF_RATIONAL data item as a two-element array of ints. Returns a TIFF_RATIONAL data item as a two-element array of ints. A ClassCastException will be thrown if the field is not of type TIFF_RATIONAL. The index Compares this TIFFField with another TIFFField by comparing the tags. Compares this TIFFField with another TIFFField by comparing the tags. Note: this class has a natural ordering that is inconsistent with equals(). A class for performing LZW decoding. Method to decode LZW compressed data. The compressed data. Array to return the uncompressed data in. The number of rows the compressed data contains. Initialize the string table. Write out the string just uncompressed. Add a new string to the string table. Add a new string to the string table. Append newString to the end of oldString. Exports images as TIFF. Inner class class containing information about a field. Inner class containing info about a field. Inner class containing info about a field. Inner class containing info about a field. Inner class containing info about a field. Inner class containing info about a field. Inner class containing info about a field. Inner class containing info about an ASCII field. Class used to represented the International Color Consortium profile Construct an icc profile from the passed byte[], using the passed number of components. byte[] containing the raw icc profile data number of components the profile contains IccProfile constructed from the data Construct an icc profile from the passed byte[], using the passed number of components. byte[] containing the raw icc profile data IccProfile constructed from the data Construct an icc profile from the passed random-access file or array. random-access file or array containing the profile IccProfile constructed from the data Construct an icc profile from the passed InputStream. inputstream containing the profile IccProfile constructed from the data Construct an icc profile from the file found at the passed path path to the file contaning the profile IccProfile constructed from the data Get the Color space name of the icc profile found in the data. byte[] containing the icc profile String containing the color space of the profile Get the device class of the icc profile found in the data. byte[] containing the icc profile String containing the device class of the profile Get the number of color components of the icc profile found in the data. byte[] containing the icc profile Number of color components Get the icc color profile data. byte[] containing the data Get the number of color components in the profile. number of components List items for the linked list that builds the new CID font. remember the current offset and increment by item's size in bytes. Emit the byte stream for this item. Fix up cross references to this item (applies only to markers). set the value of an offset item that was initially unknown. set the value of an offset item that was initially unknown. It will be fixed up latex by a call to xref on some marker. A range item. An index-offset item for the list. An index-offset item for the list. The size denotes the required size in the CFF. A positive value means that we need a specific size in bytes (for offset arrays) and a negative value means that this is a dict item that uses a variable-size representation. TODO To change the template for this generated type comment go to Window - Preferences - Java - Code Generation - Code and Comments an unknown offset in a dictionary for the list. an unknown offset in a dictionary for the list. We will fix up the offset later; for now, assume it's large. Card24 item. Card32 item. A SID or Card16 item. A Card8 item. A dictionary number on the list. A dictionary number on the list. This implementation is inefficient: it doesn't use the variable-length representation. An offset-marker item for the list. An offset-marker item for the list. It is used to mark an offset and to set the offset list item. a utility that creates a range item for an entire index where the index is a range item representing the entire index get a single CID font. get a single CID font. The PDF architecture (1.4) supports 16-bit strings only with CID CFF fonts, not in Type-1 CFF fonts, so we convert the font to CID if it is in the Type-1 format. Two other tasks that we need to do are to select only a single font from the CFF package (this again is a PDF restriction) and to subset the CharStrings glyph description. A random Access File or an array This Class subsets a CFF Type Font. This Class subsets a CFF Type Font. The subset is preformed for CID fonts and NON CID fonts. The Charstring is subsetted for both types. For CID fonts only the FDArray which are used are embedded. The Lsubroutines of the FDArrays used are subsetted as well. The Subroutine subset supports both Type1 and Type2 formatting although only tested on Type2 Format. For Non CID the Lsubroutines are subsetted. On both types the Gsubroutines is subsetted. A font which was not of CID type is transformed into CID as a part of the subset process. The CID synthetic creation was written by Sivan Toledo (sivan@math.tau.ac.il) Oren Manor (manorore@post.tau.ac.il) and Ygal Blum (blumygal@post.tau.ac.il) The Strings in this array represent Type1/Type2 operator names The Strings in this array represent Type1/Type2 escape operator names Operator codes for unused CharStrings and unused local and global Subrs A Map containing the glyphs used in the text after being converted to glyph number by the CMap The GlyphsUsed keys as an list A Set for keeping the FDArrays being used by the font A Maps array for keeping the subroutines used in each FontDict The SubroutinesUsed Maps as lists A Map for keeping the Global subroutines used in the font The Global SubroutinesUsed Maps as lists A Map for keeping the subroutines used in a non-cid font The SubroutinesUsed Map as list An array of the new Indexes for the local Subr. An array of the new Indexes for the local Subr. One index for each FontDict The new subroutines index for a non-cid font The new global subroutines index of the font The new CharString of the font The bias for the global subroutines The linked list for generating the new font stream Number of arguments to the stem operators in a subroutine calculated recursively C'tor for CFFFontSubset - The font file - a Map that contains the glyph used in the subset Calculates the length of the charset according to its format The Charset Offset Number of glyphs in the font the length of the Charset Function calculates the number of ranges in the Charset The number of glyphs in the font The format of the Charset The number of ranges in the Charset data structure Read the FDSelect of the font and compute the array and its length The index of the font being processed Function reads the FDSelect and builds the FDArrayUsed Map According to the glyphs used the Number of font being processed Read the FDArray count, offsize and Offset array the Number of font being processed The Process function extracts one font out of the CFF file and returns a subset version of the original. - The name of the font to be taken out of the CFF The new font stream The Process function extracts one font out of the CFF file and returns a subset version of the original with the first name. The new font stream Function calcs bias according to the CharString type and the count of the subrs The offset to the relevant subrs index the font The calculated Bias Function uses BuildNewIndex to create the new index of the subset charstrings the font Function builds the new local and global subsrs indices. Function builds the new local and global subsrs indices. IF CID then All of the FD Array lsubrs will be subsetted. the font The function finds for the FD array processed the local subr offset and its offset array. the font The FDARRAY processed Function uses ReadAsubr on the glyph used to build the LSubr and Gsubr Map. Function uses ReadAsubr on the glyph used to build the LSubr and Gsubr Map. The Map (of the lsubr only) is then scanned recursively for Lsubr and Gsubrs calls. the font FD array processed. 0 indicates function was called by non CID font the offset to the subr index to calc the bias the offset array of the subr index Map of the subrs used list of the subrs used Function scans the Glsubr used list to find recursive calls to Gsubrs and adds to Map and list the font The function reads a subrs (glyph info) between begin and end. The function reads a subrs (glyph info) between begin and end. Adds calls to a Lsubr to the hSubr and lSubrs. Adds calls to a Gsubr to the hGSubr and lGSubrs. the start point of the subr the end point of the subr the bias of the Global Subrs the bias of the Local Subrs the Map for the lSubrs the list for the lSubrs Function Checks how the current operator effects the run time stack after being run An operator may increase or decrease the stack size Function checks the key and return the change to the stack after the operator The change in the stack. 2-> flush the stack Empty the Type2 Stack Pop one element from the stack Add an item to the stack The function reads the next command after the file pointer is set The function reads the subroutine and returns the number of the hint in it. The function reads the subroutine and returns the number of the hint in it. If a call to another subroutine is found the function calls recursively. the start point of the subr the end point of the subr the bias of the Local Subrs the bias of the Global Subrs The Offsets array of the subroutines The number of hints in the subroutine read. Function builds the new offset array, object array and assembles the index. Function builds the new offset array, object array and assembles the index. used for creating the glyph and subrs subsetted index the offset array of the original index the Map of the used objects the operator inserted into the data stream for unused entries the new index subset version Function builds the new offset array, object array and assembles the index. Function builds the new offset array, object array and assembles the index. used for creating the glyph and subrs subsetted index the offset array of the original index the operator inserted into the data stream for unused entries the new index subset version Function creates the new index, inserting the count,offsetsize,offset array and object array. the subsetted offset array the subsetted object array the new index created The function builds the new output stream according to the subset process the font the subsetted font stream Function Copies the header from the original fileto the output list Function Build the header of an index the count field of the index the offsize field of the index the first offset of the index Function adds the keys into the TopDict OffsetItem for the FDArray OffsetItem for the FDSelect OffsetItem for the CharSet OffsetItem for the CharString Function takes the original string item and adds the new strings to accommodate the CID rules the font Function creates new FDSelect for non-CID fonts. Function creates new FDSelect for non-CID fonts. The FDSelect built uses a single range for all glyphs OffsetItem for the FDSelect the number of glyphs in the font Function creates new CharSet for non-CID fonts. Function creates new CharSet for non-CID fonts. The CharSet built uses a single range for all glyphs OffsetItem for the CharSet the number of glyphs in the font Function creates new FDArray for non-CID fonts. Function creates new FDArray for non-CID fonts. The FDArray built has only the "Private" operator that points to the font's original private dict OffsetItem for the FDArray OffsetItem for the Private Dict the font Function reconstructs the FDArray, PrivateDict and LSubr for CID fonts the font Function subsets the FDArray and builds the new one with new offsets The font OffsetItem Array (one for each FDArray) Function Adds the new private dicts (only for the FDs used) to the list the font OffsetItem array one element for each private IndexBaseItem array one element for each private OffsetItem array one element for each private Function Adds the new LSubrs dicts (only for the FDs used) to the list The index of the font The IndexBaseItem array for the linked list OffsetItem array for the linked list Calculates how many byte it took to write the offset for the subrs in a specific private dict. The Offset for the private dict The size of the private dict The size of the offset of the subrs in the private dict Function computes the size of an index The offset for the computed index The size of the index The function creates a private dict for a font that was not CID All the keys are copied as is except for the subrs key the font The OffsetItem for the subrs of the private the function marks the beginning of the subrs index and adds the subsetted subrs index to the output list. the font IndexBaseItem for the private that's referencing to the subrs OffsetItem for the subrs Checks if its a valid CJKFont font. the font name. the encoding. if it is CJKFont. CMap name. CMap name. CMap to convert Unicode value to CID. Checks whether the was built with corresponding cmap name. a CMAP true, if the CMapEncoding was built with the cmap. Otherwise false. a CID CMAP code as an int psoares psoares psoares Returns a list containing sequential pairs of code space beginning and endings: (begincodespacerange1, endcodespacerange1, begincodespacerange2, endcodespacerange1, ...) psoares Commands have this type. Holds value of property tokeniser. Creates a new instance of PdfContentParser the tokeniser with the content Parses a single command from the content. Parses a single command from the content. Each command is output as an array of arguments having the command itself as the last element. The returned array will be empty if the end of content was reached. an ArrayList to use. It will be cleared before using. Reads a dictionary. Reads a dictionary. The tokeniser must be positioned past the "<<" token. the dictionary Reads an array. Reads an array. The tokeniser must be positioned past the "[" token. an array Reads a pdf object. the pdf object Reads the next token skipping over the comments. if a token was read, if the end of content was reached. Gets an hex string in the format "<HHHH>". the number the hex string psoares psoares Return String representation of value field. This class represents a CMap file. Ben Litchfield (ben@benlitchfield.com) Creates a new instance of CMap. This will tell if this cmap has any two byte mappings. true If there are any two byte mappings, false otherwise. This will perform a lookup into the map. The code used to lookup. The offset into the byte array. The length of the data we are getting. The string that matches the lookup. psoares psoares Font descriptor flags Represents Open Type head.macStyle bits. Represents Open Type head.macStyle bits. https://www.microsoft.com/typography/otspec/head.htm Convert from Open Type font width class notation. Convert from Open Type font width class notation. https://www.microsoft.com/typography/otspec/os2.htm#wdc Open Type font width. one of the constants. Undefined font style. Normal font style. Bold font style. Italic font style. Bold-Italic font style. Class containing families for . Class containing families for . This class was made for com.itextpdf.io.font.FontRegisterProvider. Font family for , , and . Font family for , , and . Font family for . Font family for . Font family for , , and . This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font The code pages possible for a True Type font. Gets code page description based on ulCodePageRange bit settings (OS/2 table). Gets code page description based on ulCodePageRange bit settings (OS/2 table). See https://www.microsoft.com/typography/unicode/ulcp.htm for more details. index from ulCodePageRange bit settings (OS/2 table). From 0 to 63. code bage description. Checks if the font with the given name and encoding is one of the predefined CID fonts. the font name. if it is CJKFont. Finds a CJK font family which is compatible to the given CMap. a name of the CMap for which compatible font is searched. a CJK font name if there's known compatible font for the given cmap name, or null otherwise. Finds all CMap names that belong to the same registry to which a given font belongs. a name of the font for which CMap's are searched. a set of CMap names corresponding to the given font. Parses CMap with a given name producing it in a form of cid to unicode mapping. a CMap name. It is expected that CMap identified by this name defines unicode to cid mapping. an object for convenient mapping from cid to unicode. If no CMap was found for provided name an exception is thrown. Clears the cache by removing fonts that were added via . Clears the cache by removing fonts that were added via . Be aware that in multithreading environment this method call will affect the result of . This in its turn affects creation of fonts via factories when cached argument is set to true (which is by default). Font constants for and PdfFontFactory. Undefined font style. Normal font style. Bold font style. Italic font style. Bold-Italic font style. This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font This is a possible value of a base 14 type 1 font A not defined character in a custom PDF encoding. Base font encoding. if the font must use its built in encoding. if the font must use its built in encoding. In that case the encoding is only used to map a char to the position inside the font, not to the expected char name. Mapping map from unicode to simple code according to the encoding. Encoding names. Encodings unicode differences This encoding will base on font encoding (FontSpecific encoding in Type 1 terminology) Gets unicode value for corresponding font's char code. font's char code -1, if the char code unsupported or valid unicode. Converts a String to a byte array according to the encoding. Converts a String to a byte array according to the encoding. String could contain a unicode symbols or font specific codes. the String to be converted. an array of byte representing the conversion according to the encoding Converts a unicode symbol or font specific code to byte according to the encoding. a unicode symbol or FontSpecif code to be converted. a byte representing the conversion according to the encoding Check whether a unicode symbol or font specific code can be converted to byte according to the encoding. a unicode symbol or font specific code to be checked. if ch could be encoded. Check whether a byte code can be converted to unicode symbol according to the encoding. a byte code to be checked. if could be decoded. Checks whether the was built with corresponding encoding. an encoding true, if the FontEncoding was built with the encoding. Otherwise false. Normalize the encoding names. Normalize the encoding names. "winansi" is changed to "Cp1252" and "macroman" is changed to "MacRoman". the encoding to be normalized the normalized encoding Extracts the names of the font in all the languages available. the name id to retrieve in OpenType notation not empty String[][] if any names exists, otherwise . Sets font weight. integer form 100 to 900. See . Gets font stretch in css notation (font-stretch property). One of values. Sets font stretch in css notation (font-stretch property). . Sets Open Type head.macStyle. Sets Open Type head.macStyle. The font's encoding name. The font's encoding name. This encoding is 'StandardEncoding' or 'AdobeStandardEncoding' for a font that can be totally encoded according to the characters names. For all other names the font is treated as symbolic. Get glyph's width. a unicode symbol or FontSpecif code. Gets width in normalized 1000 units. Get glyph's bbox. a unicode symbol or FontSpecif code. Gets bbox in normalized 1000 units. Gets the kerning between two glyphs. the first unicode value the second unicode value the kerning to be applied Gets the kerning between two glyphs. the first glyph the second glyph the kerning to be applied Checks whether the was built with corresponding fontName. Checks whether the was built with corresponding fontName. Default value is false unless overridden. a font name or path to a font program true, if the FontProgram was built with the fontProgram. Otherwise false. Gets the name without the modifiers Bold, Italic or BoldItalic. the full name of the font the name without the modifiers Bold, Italic or BoldItalic Sets the PostScript italic angel. Sets the PostScript italic angel. Italic angle in counter-clockwise degrees from the vertical. Zero for upright text, negative for text that leans to the right (forward). in counter-clockwise degrees from the vertical Sets font weight. integer form 100 to 900. See . Sets font width in css notation (font-stretch property) . Sets a preferred font family name. a preferred font family name. Sets the PostScript name of the font. Sets the PostScript name of the font. If full name is null, it will be set as well. the PostScript name of the font, shall not be null or empty. Base font descriptor. Provides methods for creating various types of fonts. This is the default value of the cached variable. Creates a new standard Helvetica font program file. a object with Helvetica font description Creates a new font program. Creates a new font program. This font program can be one of the 14 built in fonts, a Type1 font referred to by an AFM or PFM file, a TrueType font or a CJK font from the Adobe Asian Font Pack. Fonts in TrueType Collections are addressed by index such as "msgothic.ttc,1". This would get the second font (indexes start at 0), in this case "MS PGothic". The fonts are cached and if they already exist they are extracted from the cache, not parsed again. the name of the font or its location on file returns a new . This font program may come from the cache Creates a new font program. Creates a new font program. This font program can be one of the 14 built in fonts, a Type1 font referred to by an AFM or PFM file, a TrueType font or a CJK font from the Adobe Asian Font Pack. Fonts in TrueType Collections are addressed by index such as "msgothic.ttc,1". This would get the second font (indexes start at 0), in this case "MS PGothic". The fonts are cached and if they already exist they are extracted from the cache, not parsed again. the name of the font or its location on file whether to to cache this font program after it has been loaded returns a new . This font program may come from the cache Creates a new font program. Creates a new font program. This font program can be one of the 14 built in fonts, a Type1 font referred to by an AFM or PFM file, a TrueType font or a CJK font from the Adobe Asian Font Pack. Fonts in TrueType Collections are addressed by index such as "msgothic.ttc,1". This would get the second font (indexes start at 0), in this case "MS PGothic". The fonts are cached and if they already exist they are extracted from the cache, not parsed again. the byte contents of the font program returns a new . This font program may come from the cache Creates a new font program. Creates a new font program. This font program can be one of the 14 built in fonts, a Type 1 font referred to by an AFM or PFM file, a TrueType font or a CJK font from the Adobe Asian Font Pack. Fonts in TrueType Collections are addressed by index such as "msgothic.ttc,1". This would get the second font (indexes start at 0), in this case "MS PGothic". The fonts are cached and if they already exist they are extracted from the cache, not parsed again. the byte contents of the font program whether to to cache this font program returns a new . This font program may come from the cache Creates a new Type 1 font by the byte contents of the corresponding AFM/PFM and PFB files the contents of the AFM or PFM metrics file the contents of the PFB file created instance Creates a new Type 1 font by the byte contents of the corresponding AFM/PFM and PFB files the contents of the AFM or PFM metrics file the contents of the PFB file specifies whether to cache the created or not created instance Creates a new Type 1 font by the corresponding AFM/PFM and PFB files path to the AFM or PFM metrics file path to the contents of the PFB file created instance Creates a new Type 1 font by the corresponding AFM/PFM and PFB files path to the AFM or PFM metrics file path to the contents of the PFB file specifies whether to cache the created or not created instance Creates a new TrueType font program from ttc (TrueType Collection) file. location of TrueType Collection file (*.ttc) the index of the font file from the collection to be read true if the font comes from the cache or is added to the cache if new, false if the font is always created new returns a new instance. This font may come from the cache but only if cached is true, otherwise it will always be created new Creates a new TrueType font program from ttc (TrueType Collection) file bytes. the content of a TrueType Collection file (*.ttc) the index of the font file from the collection to be read true if the font comes from the cache or is added to the cache if new, false if the font is always created new returns a new instance. This font may come from the cache but only if cached is true, otherwise it will always be created new Creates a FontProgram from the font file that has been previously registered. either a font alias, if the font file has been registered with an alias, or just a font name otherwise the style of the font to look for. Possible values are listed in . See , , , , whether to try to get the font program from cache created Creates a FontProgram from the font file that has been previously registered. either a font alias, if the font file has been registered with an alias, or just a font name otherwise the style of the font to look for. Possible values are listed in . See , , , , created Creates a FontProgram from the font file that has been previously registered. either a font alias, if the font file has been registered with an alias, or just a font name otherwise created Register a font by giving explicitly the font family and name. the font family the font name the font path Registers a .ttf, .otf, .afm, .pfm, or a .ttc font file. Registers a .ttf, .otf, .afm, .pfm, or a .ttc font file. In case if TrueType Collection (.ttc), an additional parameter may be specified defining the index of the font to be registered, e.g. "path/to/font/collection.ttc,0". The index is zero-based. the path to a font file Register a font file and use an alias for the font contained in it. the path to a font file the alias you want to use for the font Register all the fonts in a directory. the directory the number of fonts registered Register fonts in some probable directories. Register fonts in some probable directories. It usually works in Windows, Linux and Solaris. the number of fonts registered Gets a set of registered font names. a set of registered fonts Gets a set of registered font names. a set of registered font families Checks if a certain font is registered. the name of the font that has to be checked. true if the font is found Clears registered font cache If you are using True Type fonts, you can declare the paths of the different ttf- and ttc-files to this class first and then create fonts in your code using one of the getFont method without having to enter a path as parameter. This is a map of postscriptfontnames of fonts and the path of their font file. This is a map of fontfamilies. Creates new FontRegisterProvider Constructs a Font-object. the name of the font the style of this font the Font constructed based on the parameters Constructs a Font-object. the name of the font the style of this font true if the font comes from the cache or is added to the cache if new, false if the font is always created new the Font constructed based on the parameters Register a font by giving explicitly the font family and name. the font family the font name the font path Register a font file, either .ttf or .otf, .afm or a font from TrueType Collection. Register a font file, either .ttf or .otf, .afm or a font from TrueType Collection. If a TrueType Collection is registered, an additional index of the font program can be specified the path to a ttf- or ttc-file Register a font file and use an alias for the font contained in it. the path to a font file the alias you want to use for the font Register all the fonts in a directory. the directory the number of fonts registered Register all the fonts in a directory and possibly its subdirectories. the directory recursively scan subdirectories if true the number of fonts registered Register fonts in some probable directories. Register fonts in some probable directories. It usually works in Windows, Linux and Solaris. the number of fonts registered Gets a set of registered font names. a set of registered fonts Gets a set of registered font names. a set of registered font families Checks if a certain font is registered. the name of the font that has to be checked. true if the font is found Classes implementing this interface can create custom encodings or replace existing ones. Classes implementing this interface can create custom encodings or replace existing ones. It is used in the context of PdfEncoding. Paulo Soares Converts an Unicode string to a byte array according to some encoding. the Unicode string the requested encoding. It's mainly of use if the same class supports more than one encoding. the conversion or null if no conversion is supported Converts an Unicode char to a byte array according to some encoding. the Unicode char the requested encoding. It's mainly of use if the same class supports more than one encoding. the conversion or null if no conversion is supported Converts a byte array to an Unicode string according to some encoding. the input byte array the requested encoding. It's mainly of use if the same class supports more than one encoding. the conversion or null if no conversion is supported The components of table 'head'. The components of table 'hhea'. The components of table 'OS/2'. The italic angle. The italic angle. It is usually extracted from the 'post' table or in it's absence with the code:
            -Math.atan2(hhea.caretSlopeRun, hhea.caretSlopeRise) * 180 / Math.PI
            
true if all the glyphs have the same width. The map containing the code information for the table 'cmap', encoding 1.0. The map containing the code information for the table 'cmap', encoding 1.0. The key is the code and the value is an int[2] where position 0 is the glyph number and position 1 is the glyph width normalized to 1000 units. The map containing the code information for the table 'cmap', encoding 3.1 in Unicode. The map containing the code information for the table 'cmap', encoding 3.1 in Unicode. The key is the code and the value is an int[2] where position 0 is the glyph number and position 1 is the glyph width normalized to 1000 units. The file name. The file in use. The index for the TTC font. The index for the TTC font. It is -1 int for a TTF file. The offset from the start of the file to the table directory. The offset from the start of the file to the table directory. It is 0 for TTF and may vary for TTC depending on the chosen font. The font name. The font name. This name is usually extracted from the table 'name' with the 'Name ID' 6. All the names of the Names-Table. Indicate, that the font contains 'CFF ' table. Offset to 'CFF ' table. Length of 'CFF ' table. Contains the location of the several tables. Contains the location of the several tables. The key is the name of the table and the value is an int[2] where position 0 is the offset from the start of the file and position 1 is the length of the table. Gets the Postscript font name. If this font file is using the Compact Font File Format, then this method will return the raw bytes needed for the font stream. If this font file is using the Compact Font File Format, then this method will return the raw bytes needed for the font stream. If this method is ever made public: make sure to add a test if (cff == true). a byte array Reads the font data. if true, all tables will be read, otherwise only 'head', 'name', and 'os/2'. Gets the name from a composed TTC file name. Gets the name from a composed TTC file name. If I have for input "myfont.ttc,2" the return will be "myfont.ttc". the full name the simple file name Reads the glyphs widths. Reads the glyphs widths. The widths are extracted from the table 'hmtx'. The glyphs are normalized to 1000 units (TrueTypeFont.UNITS_NORMALIZATION). Depends on and . Reads the kerning information from the 'kern' table. . Read the glyf bboxes from 'glyf' table. Extracts the names of the font in all the languages available. Read horizontal header, table 'hhea'. Read font header, table 'head'. Reads the windows metrics table. Reads the windows metrics table. The metrics are extracted from the table 'OS/2'. Depends on property. Reads the several maps from the table 'cmap'. Reads the several maps from the table 'cmap'. The maps of interest are 1.0 for symbolic fonts and 3.1 for all others. A symbolic font is defined as having the map 3.0. Depends from readGlyphWidths(). Reads a String from the font file as bytes using the Cp1252 encoding. the length of bytes to read the String read Reads a Unicode String from the font file. Reads a Unicode String from the font file. Each character is represented by two bytes. the length of bytes to read. The String will have length/2 characters. the String read. Gets a glyph width. the glyph to get the width of the width of the glyph in normalized 1000 units (TrueTypeFont.UNITS_NORMALIZATION) The information in the maps of the table 'cmap' is coded in several formats. The information in the maps of the table 'cmap' is coded in several formats. Format 0 is the Apple standard character to glyph index mapping table. a HashMap representing this map The information in the maps of the table 'cmap' is coded in several formats. The information in the maps of the table 'cmap' is coded in several formats. Format 4 is the Microsoft standard character to glyph index mapping table. a HashMap representing this map The information in the maps of the table 'cmap' is coded in several formats. The information in the maps of the table 'cmap' is coded in several formats. Format 6 is a trimmed table mapping. It is similar to format 0 but can have less than 256 entries. a HashMap representing this map length of the context glyph sequence defined by this rule. an array of SubstLookupRecord. Each record specifies a position in the context glyph sequence and a LookupListIndex to the substitution lookup that is applied at that position. Checks if glyph line element matches element from input sequence of the rule. Checks if glyph line element matches element from input sequence of the rule.

NOTE: rules do not contain the first element of the input sequence, the first element is defined by rule position in substitution table. Therefore atIdx shall not be 0.
index in the rule sequence. Shall be: 0 < atIdx < ContextualSubstRule.getContextLength().
length of the lookahead context glyph sequence defined by this rule. length of the backtrack context glyph sequence defined by this rule. Checks if glyph line element matches element from lookahead sequence of the rule. index in rule sequence. Shall be: 0 <= atIdx < ContextualSubstRule.getLookaheadContextLength(). Checks if glyph line element matches element from backtrack sequence of the rule. index in rule sequence. Shall be: 0 <= atIdx < ContextualSubstRule.getBacktrackContextLength(). Gets a most preferable context rule that matches the line at current position. Gets a most preferable context rule that matches the line at current position. If no matching context rule is found, it returns null.

NOTE: if matching context rule is found, the GlyphLine.start and GlyphLine.end will be changed in such way, that they will point at start and end of the matching context glyph sequence inside the glyph line.
a line, which is to be checked if it matches some context. matching context rule or null, if none was found.
Gets a set of rules, which start with given glyph id. id of the first glyph in the sequence. Checks if given glyph line at the given position matches given rule. either index which corresponds to the last glyph of the matching context inside the glyph line if context matches, or -1 if context doesn't match. psoares Palash Ray Construct a non-mark Glyph, retrieving characters from unicode. code representation of the glyph in the font file normalized width of the glyph utf-32 representation of glyph if appears. Correct value is > -1 Construct a non-mark Glyph, using the codepoint of the characters as unicode point. code representation of the glyph in the font file normalized width of the glyph The Unicode text represented by this Glyph. Construct a non-mark Glyph, retrieving characters from unicode. code representation of the glyph in the font file normalized width of the glyph utf-32 representation of glyph if appears. Correct value is > -1 The normalized bounding box of this Glyph. Construct a non-mark Glyph object with id -1 and characters retrieved from unicode. normalized width of the glyph utf-32 representation of glyph if appears. Correct value is > -1 Construct a glyph object form the passed arguments. code representation of the glyph in the font file normalized width of the glyph utf-32 representation of glyph if appears. Correct value is > -1 The Unicode text represented by this Glyph. if null is passed, the unicode value is used to retrieve the chars. True if the glyph is a Mark Copy a Glyph. Glyph to copy Copy a Glyph and assign new placement and advance offsets and a new index delta to base glyph Glyph to copy x - placement offset y - placement offset x - advance offset y - advance offset Index delta to base glyph. If after a glyph there are several anchored glyphs we should know we to find base glyph. Copy a glyph and assign the copied glyph a new unicode point and characters glyph to copy new unicode point Two Glyphs are equal if their unicode characters, code and normalized width are equal. The object True if this equals obj cast to Glyph, false otherwise. Gets a Unicode string corresponding to this glyph. Gets a Unicode string corresponding to this glyph. In general case it might consist of many characters. If this glyph does not have a valid unicode ( ), then a string consisting of a special Unicode '\ufffd' character is returned. the Unicode string that corresponds to this glyph Gets Unicode char sequence corresponding to this glyph. Gets Unicode char sequence corresponding to this glyph. In general case it might consist of many characters. If this glyph does not have a valid unicode ( ), then a special Unicode '\ufffd' character is returned. the Unicode char sequence that corresponds to this glyph Create a new line of Glyphs. list containing the glyphs Create a new line of Glyphs from a slice of a List of Glyphs. list of Glyphs to slice starting index of the slice terminating index of the slice Create a new line of Glyphs from a slice of a List of Glyphs, and add the actual text. list of Glyphs to slice corresponding list containing the actual text the glyphs represent starting index of the slice terminating index of the slice Copy a line of Glyphs. line of Glyphs to copy Copy a slice of a line of Glyphs line of Glyphs to copy starting index of the slice terminating index of the slice Get the unicode string representation of the GlyphLine slice. starting index of the slice terminating index of the slice String containing the unicode representation of the slice. Copy a slice of this Glyphline. leftmost index of the slice rightmost index of the slice new GlyphLine containing the copied slice Add a line to the current one. Add a line to the current one. The glyphs from the start till the end points will be copied. The same is true for the actual text. the line that should be added to the current one Replaces the current content with the other line's content. the line with the content to be set to the current one Parses an OpenTypeFont file and reads the Glyph Substitution Table. Parses an OpenTypeFont file and reads the Glyph Substitution Table. This table governs how two or more Glyphs should be merged to a single Glyph. This is especially useful for Asian languages like Bangla, Hindi, etc. This has been written according to the OPenTypeFont specifications. This may be found here. Palash Ray Parses an OpenTypeFont file and reads the Glyph Substitution Table. Parses an OpenTypeFont file and reads the Glyph Substitution Table. This table governs how two or more Glyphs should be merged to a single Glyph. This is especially useful for Asian languages like Bangla, Hindi, etc. This has been written according to the OPenTypeFont specifications. This may be found here. Palash Ray Lookup Type 2: Pair Adjustment Positioning Subtable Lookup Type 4: MarkToBase Attachment Positioning Subtable Lookup Type 5: MarkToLigature Attachment Positioning Subtable Lookup Type 6: MarkToMark Attachment Positioning Subtable LookupType 1: Single Substitution Subtable psoares LookupType 2: Multiple Substitution Subtable LookupType 3: Alternate Substitution Subtable psoares LookupType 4: Ligature Substitution Subtable psoares The key is the first character. The key is the first character. The first element in the int array is the output ligature LookupType 5: Contextual Substitution Subtable LookupType 6: Chaining Contextual Substitution Subtable Contextual Substitution Subtable: Simple context glyph substitution Contextual Substitution Subtable: Class-based context glyph substitution Contextual Substitution Subtable: Coverage-based context glyph substitution Checks if given glyph line at the given position matches given rule. Checks if given glyph line at the given position matches given rule. Chaining Contextual Substitution Subtable: Simple Chaining Context Glyph Substitution Chaining Contextual Substitution Subtable: Class-based Chaining Context Glyph Substitution Chaining Contextual Substitution Subtable: Coverage-based Chaining Context Glyph Substitution psoares Palash Ray This is the starting point of the class. This is the starting point of the class. A sub-class must call this method to start getting call backs to the method. The Unicode encoding with horizontal writing. The Unicode encoding with vertical writing. A possible encoding. A possible encoding. A possible encoding. A possible encoding. A possible encoding. A possible encoding. A possible encoding. A possible encoding. This is the encoding to be used to output text in Unicode. This is the encoding to be used to output text for Identity-H/V CMaps. This is the default encoding to be used for converting Strings into bytes and vice versa. This is the default encoding to be used for converting Strings into bytes and vice versa. The default encoding is PDF_DOC_ENCODING. Converts a String to a byte array according to the font's encoding. the encoding the String to be converted an array of byte representing the conversion according to the font's encoding Converts a String to a byte array according to the font's encoding. the encoding the char to be converted an array of byte representing the conversion according to the font's encoding Converts a byte array to a String according to the some encoding. the bytes to convert the encoding the converted String Checks is only has PDF_DOC_ENCODING characters. the String to test if only PDF_DOC_ENCODING characters are present Adds an extra encoding. the name of the encoding. The encoding recognition is case insensitive the conversion class Converts a PFM file into an AFM file. Creates a new instance of Pfm2afm Converts a PFM file into an AFM file. the PFM file the AFM file Translate table from 1004 to psstd. Translate table from 1004 to psstd. 1004 is an extension of the Windows translate table used in PM. Windows character names. Windows character names. Give a name to the used locations for when the all flag is specified. Use this class for working with true type collection font (*.ttc) Creates a new instance by its bytes. the byte contents of the collection Creates a new instance by its file path. the path of the collection method return TrueTypeFont by ttc index the index for the TTC font TrueTypeFont returns the number of fonts in True Type Collection (file or bytes array) returns the number of fonts Indicates if fonts created by the call to will be cached or not. true if the created fonts will be cached, false otherwise Sets if fonts created by the call to will be cached or not. true if the created fonts will be cached, false otherwise The map containing the kerning information. The map containing the kerning information. It represents the content of table 'kern'. The key is an Integer where the top 16 bits are the glyph number for the first character and the lower 16 bits are the glyph number for the second character. The value is the amount of kerning in normalized 1000 units as an Integer. This value is usually negative. Gets the kerning between two glyphs. the first glyph the second glyph the kerning to be applied The offset from the start of the file to the table directory. The offset from the start of the file to the table directory. It is 0 for TTF and may vary for TTC depending on the chosen font. Gets the code pages supported by the font. the code pages supported by the font The method will update usedGlyphs with additional range or with all glyphs if there is no subset. The method will update usedGlyphs with additional range or with all glyphs if there is no subset. This set of used glyphs can be used for building width array and ToUnicode CMAP. a set of integers, which are glyph ids that denote used glyphs. This set is updated inside of the method if needed. subset status additional subset ranges Normalizes given ranges by making sure that first values in pairs are lower than second values and merges overlapping ranges in one. a of integer arrays, which are constituted by pairs of ints that denote each range limits. Each integer array size shall be a multiple of two. single merged array consisting of pairs of integers, each of them denoting a range. Subsets a True Type font by removing the unneeded glyphs from the font. Paulo Soares Contains the location of the several tables. Contains the location of the several tables. The key is the name of the table and the value is an int[3] where position 0 is the checksum, position 1 is the offset from the start of the file and position 2 is the length of the table. The file in use. The file name. Creates a new TrueTypeFontSubSet The offset from the start of the file to the table directory the file name of the font the glyphs used Does the actual work of subsetting the font. the subset font Reads a String from the font file as bytes using the Cp1252 encoding. the length of bytes to read the String read Represents the section KernPairs in the AFM file. Represents the section KernPairs in the AFM file. Key is uni1 << 32 + uni2. Value is kerning value. Types of records in a PFB file. Types of records in a PFB file. ASCII is 1 and BINARY is 2. They have to appear in the PFB file in this sequence. Checks if the font has any kerning pairs. if the font has any kerning pairs. Sets the kerning between two Unicode chars. the first unicode char. the second unicode char. the kerning to apply in normalized 1000 units. if the kerning was applied, otherwise. Find glyph by glyph name. Glyph name Glyph instance if found, otherwise null. Creates a new Type1 font file. the AFM file if the input is made with a byte array the PFB file if the input is made with a byte array the name of one of the 14 built-in fonts or the location of an AFM file. The file must end in '.afm' Helper class to deal with unsigned primitives in java Accumulates data we may need to reconstruct a single font. Accumulates data we may need to reconstruct a single font. One per font created for a TTC. Fixed memory block for woff2 out. Output interface for the woff2 decoding. Output interface for the woff2 decoding. Writes to arbitrary offsets are supported to facilitate updating offset table and checksums after tables are ready. Reading the current size is supported so a 'loca' table can be built up while writing glyphs. By default limits size to kDefaultMaxSize. size of the image True if the bitmap image does not contain a header Process the passed Image data as a BMP image. Process the passed Image data as a BMP image. Image is loaded and all image attributes are initialized and/or updated the image to process as a BMP image Gets an instance of an Image from the to convert if different from null the transparency pixels are replaced by this color RawImage Gets an instance of an Image from a . the to convert if different from null the transparency pixels are replaced by this color if true the image is treated as black and white an object of type ImgRaw Converts a .NET image to a Native(PNG, JPG, GIF, WMF) image Load data by URL. Load data by URL. url must be not null. Note, this method doesn't check if data or url is null. Reads image source and fills GifImage object with parameters (frames, width, height) GifImage Reads image source and fills GifImage object with parameters (frames, width, height) GifImage the last frame of the gif image should be read Reads GIF file header information. Reads Logical Screen Descriptor Reads next 16-bit value, LSB first Reads next variable length block from input. number of bytes stored in "buffer" Reads next frame image Reads Graphics Control Extension values Skips variable length blocks up to and including next zero length block. a static that is used for attributing a unique id to each image. Checks if image can be inline if the image can be inline Load data from URL. Load data from URL. url must be not null. Note, this method doesn't check if data or url is null. Creates a new serial id. the new serialId Create an ImageData instance representing the image from the image bytes. byte representation of the image. whether to recover from a image error (for TIFF-images) The created ImageData object. Create an ImageData instance representing the image from the image bytes. byte representation of the image. The created ImageData object. Create an ImageData instance representing the image from the file located at the specified url. location of the image whether to recover from a image error (for TIFF-images) The created ImageData object. Create an ImageData instance representing the image from the file located at the specified url. location of the image The created ImageData object. Create an ImageData instance representing the image from the specified file. filename of the file containing the image whether to recover from a image error (for TIFF-images) The created ImageData object. Create an ImageData instance representing the image from the specified file. filename of the file containing the image The created ImageData object. Create an ImageData instance from the passed parameters. width of the image in pixels height of the image in pixels whether to reverse the bits stored in data (TIFF images). Type of CCITT encoding colour space parameters array containing raw image data array containing transparency information created ImageData object. Create an ImageData instance from the passed parameters. width of the image in pixels height of the image in pixels colour space components bits per colour. array containing raw image data array containing transparency information created ImageData object. Gets an instance of an Image from a java.awt.Image the java.awt.Image to convert if different from null the transparency pixels are replaced by this color RawImage Gets an instance of an Image from a java.awt.Image. the java.awt.Image to convert if different from null the transparency pixels are replaced by this color if true the image is treated as black and white RawImage Get a bitmap ImageData instance from the specified url. location of the image. Whether the image contains a header. size of the image created ImageData. Get a bitmap ImageData instance from the provided bytes. array containing the raw image data Whether the image contains a header. size of the image created ImageData. Return a GifImage object. Return a GifImage object. This object cannot be added to a document array containing the raw image data GifImageData instance. Returns a specified frame of the gif image url of gif image number of frame to be returned GifImageData instance. Returns a specified frame of the gif image byte array of gif image number of frame to be returned GifImageData instance. Returns List of gif image frames byte array of gif image array of frame numbers of gif image All frames of gif image. Returns List of gif image frames url of gif image array of frame numbers of gif image All frames of gif image. Returns List of gif image frames byte array of gif image all frames of gif image Returns List of gif image frames url of gif image all frames of gif image Create a ImageData instance from a Jpeg image url Checks if the type of image (based on first 8 bytes) is supported by factory.

Note:if this method returns true it doesn't means that won't throw exception
image raw bytes true if first eight bytes are recognised by factory as valid image type and false otherwise
Checks if the type of image (based on first 8 bytes) is supported by factory.

Note:if this method returns true it doesn't means that won't throw exception
image raw bytes true if first eight bytes are recognised by factory as valid image type and false otherwise
Gets the number of pages in a JBIG2 image. a byte array containing a JBIG2 image the number of pages Gets the number of pages in a JBIG2 image. a RandomAccessFileOrArray containing a JBIG2 image the number of pages Gets a byte array that can be used as a /JBIG2Globals, or null if not applicable to the given jbig2. an random access file or array a byte array This method checks if the image is a valid JPEG and processes some parameters. This is a type of marker. This is a type of marker. Acceptable Jpeg markers. This is a type of marker. Unsupported Jpeg markers. This is a type of marker. Jpeg markers without additional parameters. Marker value Marker value Marker value Marker value for Photoshop IRB sequence that is used in all Jpeg files sequence preceding Photoshop resolution data Process the passed Image data as a JPEG image. Process the passed Image data as a JPEG image. Image is loaded and all image attributes are initialized and/or updated. the image to process as a JPEG image This method checks if the image is a valid JPEG and processes some parameters. Reads a short from the InputStream. the InputStream an int Returns a type of marker. an int a type: VALID_MARKER, UNSUPPORTED_MARKER or NOPARAM_MARKER Some PNG specific values. A PNG marker. A PNG marker. A PNG marker. A PNG marker. A PNG marker. A PNG marker. A PNG marker. A PNG marker. A PNG marker. A PNG marker. Gets an int from an InputStream. an InputStream the value of an int Gets a word from an InputStream. an InputStream the value of an int Gets a String from an InputStream. an InputStream the value of an int Pure two-dimensional encoding (Group 4) Pure one-dimensional encoding (Group 3, 1-D) Mixed one- and two-dimensional encoding (Group 3, 2-D) A flag indicating whether 1-bits are to be interpreted as black pixels and 0-bits as white pixels, A flag indicating whether the filter expects extra 0-bits before each encoded line so that the line begins on a byte boundary. A flag indicating whether end-of-line bit patterns are required to be present in the encoding. A flag indicating whether the filter expects the encoded data to be terminated by an end-of-block pattern, overriding the Rows parameter. A flag indicating whether the filter expects the encoded data to be terminated by an end-of-block pattern, overriding the Rows parameter. The use of this flag will set the key /EndOfBlock to false. Update original image with Raw Image parameters. the exact width of the image the exact height of the image 1,3 or 4 for GrayScale, RGB and CMYK bits per component. Must be 1,2,4 or 8 the image data Gets the number of pages the TIFF document has. a RandomAccessFileOrArray containing a TIFF image. the number of pages. Gets the number of pages the TIFF document has. a byte array containing a TIFF image. the number of pages. Processes the ImageData as a TIFF image. image to process. Exception class for exceptions in io module. Object for more details Creates a new IOException. the detail message. Creates a new IOException. the cause (which is saved for later retrieval by method). Creates a new IOException. the detail message. an object for more details. Creates a new IOException. the detail message. the cause (which is saved for later retrieval by method). Creates a new instance of IOException. the detail message. the cause (which is saved for later retrieval by method). an object for more details. Gets additional params for Exception message. Sets additional params for Exception message. additional params. object itself. Class containing constants to be used in logging. A RandomAccessSource that is based on an underlying byte array Fill ByteBuffer from the end. Fill ByteBuffer from the end. Set byte at capacity() - size() - 1 position. byte. ByteBuffer. Fill ByteBuffer from the end. Fill ByteBuffer from the end. Set bytes from capacity() - size() - b.length position. byte. ByteBuffer. Constructs a new OffsetRandomAccessSource the source Does nothing - the underlying source is not closed A RandomAccessSource that is based on a set of underlying sources, treating the sources as if they were a contiguous block of data. The underlying sources (along with some meta data to quickly determine where each source begins and ends) Cached value to make multiple reads from the same underlying source more efficient Cached size of the underlying channel Constructs a new based on the specified set of sources the sources used to build this group For a given offset, return the index of the source that contains the specified offset. For a given offset, return the index of the source that contains the specified offset. This is an optimization feature to help optimize the access of the correct source without having to iterate through every single source each time. It is safe to always return 0, in which case the full set of sources will be searched. Subclasses should override this method if they are able to compute the source index more efficiently (for example takes advantage of fixed size page buffers to compute the index) the offset the index of the input source that contains the specified offset, or 0 if unknown Returns the SourceEntry that contains the byte at the specified offset sourceReleased is called as a notification callback so subclasses can take care of cleanup when the source is no longer the active source the offset of the byte to look for the SourceEntry that contains the byte at the specified offset Called when a given source is no longer the active source. Called when a given source is no longer the active source. This gives subclasses the abilty to release resources, if appropriate. the source that is no longer the active source Called when a given source is about to become the active source. Called when a given source is about to become the active source. This gives subclasses the abilty to retrieve resources, if appropriate. the source that is about to become the active source The source that contains the byte at position is retrieved, the correct offset into that source computed, then the value from that offset in the underlying source is returned.
Closes all of the underlying sources.
Used to track each source, along with useful meta data The underlying source The first byte (in the coordinates of the GroupedRandomAccessSource) that this source contains The last byte (in the coordinates of the GroupedRandomAccessSource) that this source contains The index of this source in the GroupedRandomAccessSource Standard constructor the index the source the offset of the source in the GroupedRandomAccessSource Given an absolute offset (in the GroupedRandomAccessSource coordinates), calculate the effective offset in the underlying source the offset in the parent GroupedRandomAccessSource the effective offset in the underlying source A RandomAccessSource that is wraps another RandomAccessSource but does not propagate close(). A RandomAccessSource that is wraps another RandomAccessSource but does not propagate close(). This is useful when passing a RandomAccessSource to a method that would normally close the source. The source Constructs a new IndependentRandomAccessSource object the source Does nothing - the underlying source is not closed Represents an abstract source that bytes can be read from. Represents an abstract source that bytes can be read from. This class forms the foundation for all byte input in iText. Implementations do not keep track of a current 'position', but rather provide absolute get methods. Tracking position should be handled in classes that use RandomAccessSource internally (via composition). Gets a byte at the specified position byte position the byte, or -1 if EOF is reached Read an array of bytes of specified length from the specified position of source to the buffer applying the offset. Read an array of bytes of specified length from the specified position of source to the buffer applying the offset. If the number of bytes requested cannot be read, all the possible bytes will be read to the buffer, and the number of actually read bytes will be returned. the position in the RandomAccessSource to read from output buffer offset into the output buffer where results will be placed the number of bytes to read the number of bytes actually read, or -1 if the file is at EOF Gets the length of the source the length of this source Closes this source. Closes this source. The underlying data structure or source (if any) will also be closed Streams are closed automatically. Creates a PdfTokenizer for the specified . Creates a PdfTokenizer for the specified . The beginning of the file is read to determine the location of the header, and the data source is adjusted as necessary to account for any junk that occurs in the byte source before the header the source Resolve escape symbols or hexadecimal symbols. Resolve escape symbols or hexadecimal symbols.
NOTE Due to PdfReference 1.7 part 3.2.3 String value contain ASCII characters, so we can convert it directly to byte array.
byte[] for decrypting or for creating .
Resolve escape symbols or hexadecimal symbols. Resolve escape symbols or hexadecimal symbols.
NOTE Due to PdfReference 1.7 part 3.2.3 String value contain ASCII characters, so we can convert it directly to byte array.
byte[] for decrypting or for creating .
Is a certain character a whitespace? Currently checks on the following: '0', '9', '10', '12', '13', '32'. Is a certain character a whitespace? Currently checks on the following: '0', '9', '10', '12', '13', '32'.
The same as calling isWhiteSpace(ch, true).
int boolean
Checks whether a character is a whitespace. Checks whether a character is a whitespace. Currently checks on the following: '0', '9', '10', '12', '13', '32'. int boolean boolean Helper method to handle content errors. Helper method to handle content errors. Add file position to PdfRuntimeException. message. error params. Checks whether equals to 'trailer'. for check. true, if line is equals tio 'trailer', otherwise false. Reads data into the provided byte[]. Reads data into the provided byte[]. Checks on leading whitespace. See isWhiteSpace(int) or isWhiteSpace(int, boolean) for a list of whitespace characters.
The same as calling readLineSegment(input, true).
@see ByteBuffer boolean
Reads data into the provided byte[]. Reads data into the provided byte[]. Checks on leading whitespace. See isWhiteSpace(int) or isWhiteSpace(int, boolean) for a list of whitespace characters. @see ByteBuffer boolean to indicate whether '0' is whitespace or not. If in doubt, use true or overloaded method readLineSegment(input) boolean Check whether line starts with object declaration. tokenizer, built by single line. object number and generation if check is successful, otherwise - null. A RandomAccessSource that uses a as it's source Note: Unlike most of the RandomAccessSource implementations, this class is not thread safe The source The length of the underling RAF. The length of the underling RAF. Note that the length is cached at construction time to avoid the possibility of s when reading the length. Creates this object the source for this RandomAccessSource Note: the length is determined when the is constructed. Note: the length is determined when the is constructed. If the file length changes after construction, that change will not be reflected in this call. Closes the underlying RandomAccessFile Class that is used to unify reading from random access files and arrays. When true the file access is not done through a memory mapped file. When true the file access is not done through a memory mapped file. Use it if the file is too big to be mapped in your address space. The source that backs this object The physical location in the underlying byte source. the pushed back byte, if any Whether there is a pushed back byte Creates a RandomAccessFileOrArray that wraps the specified byte source. Creates a RandomAccessFileOrArray that wraps the specified byte source. The byte source will be closed when this RandomAccessFileOrArray is closed. the byte source to wrap Creates an independent view of this object (with it's own file pointer and push back queue). Creates an independent view of this object (with it's own file pointer and push back queue). Closing the new object will not close this object. Closing this object will have adverse effect on the view. the new view Creates the view of the byte source of this object. Creates the view of the byte source of this object. Closing the view won't affect this object. Closing source will have adverse effect on the view. the byte source view. Pushes a byte back. Pushes a byte back. The next get() will return this byte instead of the value from the underlying data source the byte to push Reads a single byte the byte, or -1 if EOF is reached Reads the specified amount of bytes to the buffer applying the offset. destination buffer offset at which to start storing characters maximum number of characters to read the number of bytes actually read or -1 in case of EOF Reads the bytes to the buffer. Reads the bytes to the buffer. This method will try to read as many bytes as the buffer can hold. the destination buffer the number of bytes actually read Make an attempt to skip the specified amount of bytes in source. Make an attempt to skip the specified amount of bytes in source. However it may skip less amount of bytes. Possibly zero. the number of bytes to skip the actual number of bytes skipped Closes the underlying source. Gets the total amount of bytes in the source. source's size. Sets the current position in the source to the specified index. the position to set Gets the current position of the source considering the pushed byte to the source. the index of last read byte in the source in or the index of last read byte in source - 1 in case byte was pushed. Reads a signed 16-bit number from this stream in little-endian order. Reads a signed 16-bit number from this stream in little-endian order. The method reads two bytes from this stream, starting at the current stream pointer. If the two bytes read, in order, are b1 and b2 , where each of the two values is between 0 and 255 , inclusive, then the result is equal to:
            (short)((b2 << 8) | b1)
            
This method blocks until the two bytes are read, the end of the stream is detected, or an exception is thrown.
the next two bytes of this stream, interpreted as a signed 16-bit number.
Reads an unsigned 16-bit number from this stream in little-endian order. Reads an unsigned 16-bit number from this stream in little-endian order. This method reads two bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1 and b2 , where 0 <= b1, b2 <= 255 , then the result is equal to:
            (b2 << 8) | b1
            
This method blocks until the two bytes are read, the end of the stream is detected, or an exception is thrown.
the next two bytes of this stream, interpreted as an unsigned 16-bit integer.
Reads a Unicode character from this stream in little-endian order. Reads a Unicode character from this stream in little-endian order. This method reads two bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1 and b2 , where 0 <= b1, b2 <= 255 , then the result is equal to:
            (char)((b2 << 8) | b1)
            
This method blocks until the two bytes are read, the end of the stream is detected, or an exception is thrown.
the next two bytes of this stream as a Unicode character.
Reads a signed 32-bit integer from this stream in little-endian order. Reads a signed 32-bit integer from this stream in little-endian order. This method reads 4 bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1 , b2 , b3 , and b4 , where 0 <= b1, b2, b3, b4 <= 255 , then the result is equal to:
            (b4 << 24) | (b3 << 16) + (b2 << 8) + b1
            
This method blocks until the four bytes are read, the end of the stream is detected, or an exception is thrown.
the next four bytes of this stream, interpreted as an int.
Reads an unsigned 32-bit integer from this stream. Reads an unsigned 32-bit integer from this stream. This method reads 4 bytes from the stream, starting at the current stream pointer. If the bytes read, in order, are b1 , b2 , b3 , and b4 , where 0 <= b1, b2, b3, b4 <= 255 , then the result is equal to:
            (b1 << 24) | (b2 << 16) + (b3 << 8) + b4
            
This method blocks until the four bytes are read, the end of the stream is detected, or an exception is thrown.
the next four bytes of this stream, interpreted as a long.
Reads a String from the font file as bytes using the given encoding. the length of bytes to read the given encoding the String read Factory to create objects based on various types of sources Whether the full content of the source should be read into memory at construction Whether should be used instead of a , where applicable Whether the underlying file should have a RW lock on it or just an R lock Creates a factory that will give preference to accessing the underling data source using memory mapped files Determines whether the full content of the source will be read into memory true if the full content will be read, false otherwise this object (this allows chaining of method calls) Determines whether should be used as the primary data access mechanism whether should be used as the primary data access mechanism this object (this allows chaining of method calls) Creates a based on a byte array the byte array the newly created Creates a based on a URL. The data available at the URL is read into memory and used as the source for the the url to read from the newly created Creates a based on an . The full content of the InputStream is read into memory and used as the source for the the stream to read from the newly created Creates a based on a filename string. If the filename describes a URL, a URL based source is created If the filename describes a file on disk, the contents may be read into memory (if forceRead is true), opened using memory mapped file channel (if usePlainRandomAccess is false), or opened using access (if usePlainRandomAccess is true) This call will automatically fail over to using if the memory map operation fails the name of the file or resource to create the for the newly created Creates a new by reading the specified file/resource into memory the name of the resource to read the newly created Creates a new by reading the specified file/resource into memory the name of the resource to read the newly created An input stream that uses a as its underlying source. The source. The current position in the source. Creates an input stream based on the source. The source. A RandomAccessSource that wraps another RandomAccessSource and provides a window of it at a specific offset and over a specific length. A RandomAccessSource that wraps another RandomAccessSource and provides a window of it at a specific offset and over a specific length. Position 0 becomes the offset position in the underlying source. The source The amount to offset the source by The length Constructs a new OffsetRandomAccessSource that extends to the end of the underlying source the source the amount of the offset to use Constructs a new OffsetRandomAccessSource with an explicit length the source the amount of the offset to use the number of bytes to be included in this RAS Note that the position will be adjusted to read from the corrected location in the underlying source Note that the position will be adjusted to read from the corrected location in the underlying source Note that the length will be adjusted to read from the corrected location in the underlying source This file is a helper class for internal usage only. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. Deletes a file and returns whether the operation succeeded. Node that only *files* are supported, not directories. Abstract class for reading filtered character streams. The abstract class FilterReader itself provides default methods that pass all requests to the contained stream. Subclasses of FilterReader should override some of these methods and may also provide additional methods and fields. @author Mark Reinhold @since JDK1.1 Reads a single character. Reads characters into a portion of an array. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. A helper to FlateDecode. the input data true to read a correct stream. false to try to read a corrupted stream the decoded data Decodes a stream that has the FlateDecode filter. the input data the decoded data This method provides support for general purpose decompression using the popular ZLIB compression library. the input data bytes the buffer for the uncompressed data This class is a convenience method to sequentially calculate hash code of the object based on the field values. This class is a convenience method to sequentially calculate hash code of the object based on the field values. The result depends on the order of elements appended. The exact formula is the same as for . If you need order independent hash code just summate, multiply or XOR all elements. Suppose we have class:

            class Thing {
            long id;
            String name;
            float weight;
            }
            
The hash code calculation can be expressed in 2 forms. For maximum performance:

            public int hashCode() {
            int hashCode = HashCode.EMPTY_HASH_CODE;
            hashCode = HashCode.combine(hashCode, id);
            hashCode = HashCode.combine(hashCode, name);
            hashCode = HashCode.combine(hashCode, weight);
            return hashCode;
            }
            
For convenience:

            public int hashCode() {
            return new HashCode().append(id).append(name).append(weight).hashCode();
            }
            
The hashCode value before any data is appended, equals to 1. Returns accumulated hashCode Combines hashCode of previous elements sequence and value's hashCode. previous hashCode value new element combined hashCode Combines hashCode of previous elements sequence and value's hashCode. previous hashCode value new element combined hashCode Combines hashCode of previous elements sequence and value's hashCode. previous hashCode value new element combined hashCode Combines hashCode of previous elements sequence and value's hashCode. previous hashCode value new element combined hashCode Combines hashCode of previous elements sequence and value's hashCode. previous hashCode value new element combined hashCode Combines hashCode of previous elements sequence and value's hashCode. previous hashCode value new element combined hashCode Appends value's hashCode to the current hashCode. new element this Appends value's hashCode to the current hashCode. new element this Appends value's hashCode to the current hashCode. new element this Appends value's hashCode to the current hashCode. new element this Appends value's hashCode to the current hashCode. new element this Appends value's hashCode to the current hashCode. new element this Translates a IANA encoding name to a Java encoding. The object that maps IANA to Java encodings. A hash map that uses primitive ints for the key rather than objects. A hash map that uses primitive ints for the key rather than objects. Note that this class is for internal optimization purposes only, and may not be supported in future releases of Jakarta Commons Lang. Utilities of this sort may be included in future releases of Jakarta Commons Collections. Justin Couch Alex Chaffee (alex@apache.org) Stephen Colebourne Bruno Lowagie (change Objects as keys into int values) Paulo Soares (added extra methods) The hash table data. The total number of entries in the hash table. The table is rehashed when its size exceeds this threshold. The table is rehashed when its size exceeds this threshold. (The value of this field is (int)(capacity * loadFactor).) The load factor for the hashtable. Constructs a new, empty hashtable with a default capacity and load factor, which is 20 and 0.75 respectively. Constructs a new, empty hashtable with the specified initial capacity and default load factor, which is 0.75. the initial capacity of the hashtable. Constructs a new, empty hashtable with the specified initial capacity and the specified load factor. the initial capacity of the hashtable. the load factor of the hashtable. Returns the number of keys in this hashtable. the number of keys in this hashtable. Tests if this hashtable maps no keys to values. true if this hashtable maps no keys to values; false otherwise. Tests if some key maps into the specified value in this hashtable. Tests if some key maps into the specified value in this hashtable. This operation is more expensive than the containsKey method. Note that this method is identical in functionality to containsValue, (which is part of the Map interface in the collections framework). a value to search for. true if and only if some key maps to the value argument in this hashtable as determined by the equals method; false otherwise. Returns true if this HashMap maps one or more keys to this value. Returns true if this HashMap maps one or more keys to this value. Note that this method is identical in functionality to contains (which predates the Map interface). value whose presence in this HashMap is to be tested. boolean true if the value is contained Tests if the specified int is a key in this hashtable. possible key. true if and only if the specified int is a key in this hashtable, as determined by the equals method; false otherwise. Returns the value to which the specified key is mapped in this map. a key in the hashtable. the value to which the key is mapped in this hashtable; 0 if the key is not mapped to any value in this hashtable. Increases the capacity of and internally reorganizes this hashtable, in order to accommodate and access its entries more efficiently. Increases the capacity of and internally reorganizes this hashtable, in order to accommodate and access its entries more efficiently. This method is called automatically when the number of keys in the hashtable exceeds this hashtable's capacity and load factor. Maps the specified key to the specified value in this hashtable. Maps the specified key to the specified value in this hashtable. The key cannot be null. The value can be retrieved by calling the get method with a key that is equal to the original key. the hashtable key. the value. the previous value of the specified key in this hashtable, or null if it did not have one. Removes the key (and its corresponding value) from this hashtable. Removes the key (and its corresponding value) from this hashtable. This method does nothing if the key is not present in the hashtable. the key that needs to be removed. the value to which the key had been mapped in this hashtable, or null if the key did not have a mapping. Clears this hashtable so that it contains no keys. Innerclass that acts as a datastructure to create a new entry in the table. Create a new entry with the given values. The key used to enter this in the table The value for this key A reference to the next entry in the table This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. Summary description for Properties. A character-stream reader that allows characters to be pushed back into the stream. @author Mark Reinhold @since JDK1.1 Pushback buffer Current position in buffer Creates a new pushback reader with a pushback buffer of the given size. The reader from which characters will be read The size of the pushback buffer Creates a new pushback reader with a one-character pushback buffer. The reader from which characters will be read Checks to make sure that the stream has not been closed. Reads a single character. The character read, or -1 if the end of the stream has been reached Reads characters into a portion of an array. Destination buffer Offset at which to start writing characters Maximum number of characters to read The number of characters read, or -1 if the end of the stream has been reached Pushes back a single character by copying it to the front of the pushback buffer. After this method returns, the next character to be read will have the value (char)c. The int value representing a character to be pushed back Pushes back a portion of an array of characters by copying it to the front of the pushback buffer. After this method returns, the next character to be read will have the value cbuf[off], the character after that will have the value cbuf[off+1], and so forth. Character array Offset of first character to push back Number of characters to push back Pushes back an array of characters by copying it to the front of the pushback buffer. After this method returns, the next character to be read will have the value cbuf[0], the character after that will have the value cbuf[1], and so forth. Character array to push back Closes the stream and releases any system resources associated with it. Once the stream has been closed, further read(), unread(), ready(), or skip() invocations will throw an IOException. Closing a previously closed stream has no effect. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. Gets the resource's inputstream. the full name of the resource. the InputStream to get the resource or if not found. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. the index of the first element, inclusive, to be sorted the index of the last element, exclusive, to be sorted This file is a helper class for internal usage only. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This method is an alternative for the InputStream.skip() -method that doesn't seem to work properly for big values of . the InputStream the number of bytes to skip Escapes a byte array according to the PDF conventions. the byte array to escape an escaped byte array Escapes a byte array according to the PDF conventions. the OutputStream an escaped byte array write to. the byte array to escape. Reads the full content of a stream and returns them in a byte array the stream to read a byte array containing all of the bytes from the stream Copy bytes from the RandomAccessSource to OutputStream. the RandomAccessSource copy from. start position of source copy from. length copy to. the OutputStream copy to. Reads bytes from an input stream. the buffer into which the data is read. an int specifying the offset into the data. an int specifying the number of bytes to read. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. Should be used in relative constructs (for example to check how many milliseconds have passed). Shouldn't be used in the DateTime creation since the nanoseconds are expected there. relative time in milliseconds Gets environment variable with given name. the name of environment variable. variable value or null if there is no such. This file is a helper class for internal usage only. This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. Check if the value of a character belongs to a certain interval that indicates it's the higher part of a surrogate pair. the character true if the character belongs to the interval Check if the value of a character belongs to a certain interval that indicates it's the lower part of a surrogate pair. the character true if the character belongs to the interval Checks if two subsequent characters in a String are are the higher and the lower character in a surrogate pair (and therefore eligible for conversion to a UTF 32 character). the String with the high and low surrogate characters the index of the 'high' character in the pair true if the characters are surrogate pairs Checks if two subsequent characters in a character array are are the higher and the lower character in a surrogate pair (and therefore eligible for conversion to a UTF 32 character). the character array with the high and low surrogate characters the index of the 'high' character in the pair true if the characters are surrogate pairs Returns the code point of a UTF32 character corresponding with a high and a low surrogate value. the high surrogate value the low surrogate value a code point value Converts a unicode character in a character array to a UTF 32 code point value. a character array that has the unicode character(s) the index of the 'high' character the code point value Converts a unicode character in a String to a UTF32 code point value a String that has the unicode character(s) the index of the 'high' character the codepoint value Converts a UTF32 code point value to a String with the corresponding character(s). a Unicode value the corresponding characters in a String / Converts a UTF32 code point sequence to a String with the corresponding character(s). a Unicode text sequence start position of text to convert, inclusive end position of txt to convert, exclusive the corresponding characters in a String Converts a UTF32 code point value to a char array with the corresponding character(s). a Unicode value the corresponding characters in a char array Determines if the specified character (Unicode code point) should be regarded as an ignorable character in a Java identifier or a Unicode identifier. Determines if represented Glyph is '\n' or '\r' character. Determines if represented Glyph is '\n' or '\r' character. Determines if represented Glyph is '\n' or '\r' character. Determines if represented Glyph is space or whitespace character. Determines if represented Glyph is whitespace character. Determines if represented Glyph is ' ' (SPACE) character. Unicode script "Common". Unicode script "Latin". Unicode script "Greek". Unicode script "Cyrillic". Unicode script "Armenian". Unicode script "Hebrew". Unicode script "Arabic". Unicode script "Syriac". Unicode script "Thaana". Unicode script "Devanagari". Unicode script "Bengali". Unicode script "Gurmukhi". Unicode script "Gujarati". Unicode script "Oriya". Unicode script "Tamil". Unicode script "Telugu". Unicode script "Kannada". Unicode script "Malayalam". Unicode script "Sinhala". Unicode script "Thai". Unicode script "Lao". Unicode script "Tibetan". Unicode script "Myanmar". Unicode script "Georgian". Unicode script "Hangul". Unicode script "Ethiopic". Unicode script "Cherokee". Unicode script "Canadian_Aboriginal". Unicode script "Ogham". Unicode script "Runic". Unicode script "Khmer". Unicode script "Mongolian". Unicode script "Hiragana". Unicode script "Katakana". Unicode script "Bopomofo". Unicode script "Han". Unicode script "Yi". Unicode script "Old_Italic". Unicode script "Gothic". Unicode script "Deseret". Unicode script "Inherited". Unicode script "Tagalog". Unicode script "Hanunoo". Unicode script "Buhid". Unicode script "Tagbanwa". Unicode script "Limbu". Unicode script "Tai_Le". Unicode script "Linear_B". Unicode script "Ugaritic". Unicode script "Shavian". Unicode script "Osmanya". Unicode script "Cypriot". Unicode script "Braille". Unicode script "Buginese". Unicode script "Coptic". Unicode script "New_Tai_Lue". Unicode script "Glagolitic". Unicode script "Tifinagh". Unicode script "Syloti_Nagri". Unicode script "Old_Persian". Unicode script "Kharoshthi". Unicode script "Balinese". Unicode script "Cuneiform". Unicode script "Phoenician". Unicode script "Phags_Pa". Unicode script "Nko". Unicode script "Sundanese". Unicode script "Batak". Unicode script "Lepcha". Unicode script "Ol_Chiki". Unicode script "Vai". Unicode script "Saurashtra". Unicode script "Kayah_Li". Unicode script "Rejang". Unicode script "Lycian". Unicode script "Carian". Unicode script "Lydian". Unicode script "Cham". Unicode script "Tai_Tham". Unicode script "Tai_Viet". Unicode script "Avestan". Unicode script "Egyptian_Hieroglyphs". Unicode script "Samaritan". Unicode script "Mandaic". Unicode script "Lisu". Unicode script "Bamum". Unicode script "Javanese". Unicode script "Meetei_Mayek". Unicode script "Imperial_Aramaic". Unicode script "Old_South_Arabian". Unicode script "Inscriptional_Parthian". Unicode script "Inscriptional_Pahlavi". Unicode script "Old_Turkic". Unicode script "Brahmi". Unicode script "Kaithi". Unicode script "Meroitic Hieroglyphs". Unicode script "Meroitic Cursive". Unicode script "Sora Sompeng". Unicode script "Chakma". Unicode script "Sharada". Unicode script "Takri". Unicode script "Miao". Unicode script "Unknown". This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. * Returns the enum constant representing the Unicode script of which * the given character (Unicode code point) is assigned to. * * @param codePoint the character (Unicode code point) in question. * @return The {@code UnicodeScript} constant representing the * Unicode script of which this character is assigned to. * * @exception IllegalArgumentException if the specified * {@code codePoint} is an invalid Unicode code point. * @see Character#isValidCodePoint(int) * This file is a helper class for internal usage only. Be aware that its API and functionality may be changed in future. This method makes a valid URL from a given filename. a given filename a valid URL This method makes a normalized URI from a given filename. a given filename a valid Uri This method makes a normalized URI from a given file. a given file a valid Uri This method gets the last redirected url. an initial url the last redirected url This method gets uri string from a file. a given filename a uri string Summary description for DeflaterOutputStream. Summary description for DeflaterOutputStream.