com.sun.pdfview.font

## Class TTFFont

- java.lang.Object
- - com.sun.pdfview.font.PDFFont
  - - com.sun.pdfview.font.OutlineFont
    - - com.sun.pdfview.font.TTFFont

Direct Known Subclasses:
  CIDFontType2

    public class TTFFont
    extends OutlineFont

A true-type font

### Constructor Summary

Constructors
Constructor and Description
`TTFFont(java.lang.String baseFont, PDFObject fontObj, PDFFontDescriptor descriptor)`
`TTFFont(java.lang.String baseFont, PDFObject fontObj, PDFFontDescriptor descriptor, java.io.File fontFile)` create a new TrueTypeFont object based on a description of the font from the PDF file.

### Method Summary

Methods
`java.util.Collection<java.lang.String>` `getNames()`
`protected java.awt.geom.GeneralPath` `getOutline(char src, float width)` Get the outline of a character given the character code
`protected java.awt.geom.GeneralPath` `getOutline(int glyphId, float width)` Get the outline of a character given the glyph id
`protected java.awt.geom.GeneralPath` `getOutline(java.lang.String name, float width)` Get the outline of a character given the character name
`protected java.awt.geom.GeneralPath` `getOutlineFromCMaps(char val, float width)` lookup the outline using the CMAPs, as specified in 32000-1:2008, 9.6.6.4, when an Encoding is specified.
`protected java.awt.geom.GeneralPath` `renderCompoundGlyph(GlyfTable glyf, GlyfCompound g)` Render a compound glyf
`protected java.awt.geom.GeneralPath` `renderSimpleGlyph(GlyfSimple g)` Render a simple glyf

### Methods inherited from class com.sun.pdfview.font.OutlineFont

`getCharCount, getDefaultWidth, getFirstChar, getGlyph, getLastChar, getWidth`

### Methods inherited from class com.sun.pdfview.font.PDFFont

`equals, getBaseFont, getCachedGlyph, getDescriptor, getEncoding, getFont, getGlyphs, getSubtype, getUnicodeMap, hashCode, setBaseFont, setDescriptor, setEncoding, setSubtype, setUnicodeMap, toString`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### TTFFont

    public TTFFont(java.lang.String baseFont,
           PDFObject fontObj,
           PDFFontDescriptor descriptor)
            throws java.io.IOException

Throws:
  `java.io.IOException`

#### TTFFont

    public TTFFont(java.lang.String baseFont,
           PDFObject fontObj,
           PDFFontDescriptor descriptor,
           java.io.File fontFile)
            throws java.io.IOException

create a new TrueTypeFont object based on a description of the font from the PDF file. If the description happens to contain an in-line true-type font file (under key "FontFile2"), use the true type font. Otherwise, parse the description for key information and use that to generate an appropriate font.

Throws:
  `java.io.IOException`

### Method Detail

#### getNames

    public java.util.Collection<java.lang.String> getNames()

#### getOutline

    protected java.awt.geom.GeneralPath getOutline(char src,
                                       float width)

Get the outline of a character given the character code

Specified by:
  `getOutline` in class `OutlineFont`
Parameters:
  `src` - the character code of the desired glyph
Returns:
  the glyph outline

#### getOutlineFromCMaps

    protected java.awt.geom.GeneralPath getOutlineFromCMaps(char val,
                                                float width)

lookup the outline using the CMAPs, as specified in 32000-1:2008, 9.6.6.4, when an Encoding is specified.

Parameters:
  `val` -
  `width` -
Returns:
  GeneralPath

#### getOutline

    protected java.awt.geom.GeneralPath getOutline(java.lang.String name,
                                       float width)

Get the outline of a character given the character name

Specified by:
  `getOutline` in class `OutlineFont`
Parameters:
  `name` - the name of the desired glyph
Returns:
  the glyph outline, or null if unavailable

#### getOutline

    protected java.awt.geom.GeneralPath getOutline(int glyphId,
                                       float width)

Get the outline of a character given the glyph id

#### renderSimpleGlyph

    protected java.awt.geom.GeneralPath renderSimpleGlyph(GlyfSimple g)

Render a simple glyf

#### renderCompoundGlyph

    protected java.awt.geom.GeneralPath renderCompoundGlyph(GlyfTable glyf,
                                                GlyfCompound g)

Render a compound glyf