Class PDCIDFont

    • Method Detail

      • getCOSObject

        public COSDictionary getCOSObject()
        Description copied from interface: COSObjectable
        Convert this standard java object to a COS object.
        Specified by:
        getCOSObject in interface COSObjectable
        Returns:
        The cos object that matches this Java object.
      • getBaseFont

        public String getBaseFont()
        The PostScript name of the font.
        Returns:
        The postscript name of the font.
      • getName

        public String getName()
        Description copied from interface: PDFontLike
        Returns the name of this font, either the PostScript "BaseName" or the Type 3 "Name".
        Specified by:
        getName in interface PDFontLike
      • getFontMatrix

        public abstract Matrix getFontMatrix()
        Description copied from interface: PDFontLike
        Returns the font matrix, which represents the transformation from glyph space to text space.
        Specified by:
        getFontMatrix in interface PDFontLike
      • getParent

        public final PDType0Font getParent()
        Returns the Type 0 font which is the parent of this font.
        Returns:
        parent Type 0 font
      • getPositionVector

        public Vector getPositionVector​(int code)
        Description copied from interface: PDFontLike
        Returns the position vector (v), in text space, for the given character. This represents the position of vertical origin relative to horizontal origin, for horizontal writing it will always be (0, 0). For vertical writing both x and y are set.
        Specified by:
        getPositionVector in interface PDFontLike
        Parameters:
        code - character code
        Returns:
        position vector
      • getVerticalDisplacementVectorY

        public float getVerticalDisplacementVectorY​(int code)
        Returns the y-component of the vertical displacement vector (w1).
        Parameters:
        code - character code
        Returns:
        w1y
      • getHeight

        public abstract float getHeight​(int code)
                                 throws IOException
        Description copied from interface: PDFontLike
        Returns the height of the given character, in glyph space. This can be expensive to calculate. Results are only approximate.
        Specified by:
        getHeight in interface PDFontLike
        Parameters:
        code - character code
        Throws:
        IOException
      • getWidth

        public float getWidth​(int code)
                       throws IOException
        Description copied from interface: PDFontLike
        Returns the advance width of the given character, in glyph space.
        Specified by:
        getWidth in interface PDFontLike
        Parameters:
        code - character code
        Throws:
        IOException
      • getWidthFromFont

        public abstract float getWidthFromFont​(int code)
                                        throws IOException
        Description copied from interface: PDFontLike
        Returns the width of a glyph in the embedded font file.
        Specified by:
        getWidthFromFont in interface PDFontLike
        Parameters:
        code - character code
        Returns:
        width in glyph space
        Throws:
        IOException - if the font could not be read
      • isEmbedded

        public abstract boolean isEmbedded()
        Description copied from interface: PDFontLike
        Returns true if the font file is embedded in the PDF.
        Specified by:
        isEmbedded in interface PDFontLike
      • getAverageFontWidth

        public float getAverageFontWidth()
        Description copied from interface: PDFontLike
        This will get the average font width for all characters.
        Specified by:
        getAverageFontWidth in interface PDFontLike
        Returns:
        The width is in 1000 unit of text space, ie 333 or 777
      • getCIDSystemInfo

        public PDCIDSystemInfo getCIDSystemInfo()
        Returns the CIDSystemInfo, or null if it is missing (which isn't allowed but could happen).
      • codeToCID

        public abstract int codeToCID​(int code)
        Returns the CID for the given character code. If not found then CID 0 is returned.
        Parameters:
        code - character code
        Returns:
        CID
      • codeToGID

        public abstract int codeToGID​(int code)
                               throws IOException
        Returns the GID for the given character code.
        Parameters:
        code - character code
        Returns:
        GID
        Throws:
        IOException
      • encode

        protected abstract byte[] encode​(int unicode)
                                  throws IOException
        Encodes the given Unicode code point for use in a PDF content stream. Content streams use a multi-byte encoding with 1 to 4 bytes.

        This method is called when embedding text in PDFs and when filling in fields.

        Parameters:
        unicode - Unicode code point.
        Returns:
        Array of 1 to 4 PDF content stream bytes.
        Throws:
        IOException - If the text could not be encoded.