Class FontDetails

java.lang.Object
com.lowagie.text.pdf.FontDetails

class FontDetails extends Object
Each font in the document will have an instance of this class where the characters used will be represented.
  • Field Details

    • subset

      protected boolean subset
      Indicates if only a subset of the glyphs and widths for that particular encoding should be included in the document.
    • indirectReference

      PdfIndirectReference indirectReference
      The indirect reference to this font
    • fontName

      PdfName fontName
      The font name that appears in the document body stream
    • baseFont

      BaseFont baseFont
      The font
    • ttu

      The font if it's an instance of TrueTypeFontUnicode
    • cjkFont

      CJKFont cjkFont
      The font if it's an instance of CJKFont
    • shortTag

      byte[] shortTag
      The array used with single byte encodings
    • longTag

      HashMap<Integer,int[]> longTag
      The map used with double byte encodings. The key is Integer(glyph) and the value is int[]{glyph, width, Unicode code}
    • cjkTag

      IntHashtable cjkTag
      IntHashtable with CIDs of CJK glyphs that are used in the text.
    • fontType

      int fontType
      The font type
    • symbolic

      boolean symbolic
      true if the font is symbolic
  • Constructor Details

    • FontDetails

      FontDetails(PdfName fontName, PdfIndirectReference indirectReference, BaseFont baseFont)
      Each font used in a document has an instance of this class. This class stores the characters used in the document and other specifics unique to the current working document.
      Parameters:
      fontName - the font name
      indirectReference - the indirect reference to the font
      baseFont - the BaseFont
  • Method Details

    • getIndirectReference

      PdfIndirectReference getIndirectReference()
      Gets the indirect reference to this font.
      Returns:
      the indirect reference to this font
    • getFontName

      PdfName getFontName()
      Gets the font name as it appears in the document body.
      Returns:
      the font name
    • getBaseFont

      BaseFont getBaseFont()
      Gets the BaseFont of this font.
      Returns:
      the BaseFont of this font
    • convertToBytes

      byte[] convertToBytes(String text, TextRenderingOptions options)
      Converts the text into bytes to be placed in the document. The conversion is done according to the font and the encoding and the characters used are stored.
      Parameters:
      text - the text to convert
      Returns:
      the conversion
    • convertToBytesWithGlyphs

      private byte[] convertToBytesWithGlyphs(String text) throws UnsupportedEncodingException
      Throws:
      UnsupportedEncodingException
    • getCJKEncodingBytes

      private byte[] getCJKEncodingBytes(int[] glyph, int size)
    • convertToBytes

      byte[] convertToBytes(GlyphVector glyphVector)
    • convertToBytes

      byte[] convertToBytes(GlyphVector glyphVector, int beginIndex, int endIndex)
    • writeFont

      void writeFont(PdfWriter writer)
      Writes the font definition to the document.
      Parameters:
      writer - the PdfWriter of this document
    • isSubset

      public boolean isSubset()
      Indicates if all the glyphs and widths for that particular encoding should be included in the document.
      Returns:
      false to include all the glyphs and widths.
    • setSubset

      public void setSubset(boolean subset)
      Indicates if all the glyphs and widths for that particular encoding should be included in the document. Set to false to include all.
      Parameters:
      subset - new value of property subset