FreeHEP API
Version current

org.freehep.graphicsio.pdf
Class PDFFontTable

java.lang.Object
  extended byorg.freehep.graphicsio.font.FontTable
      extended byorg.freehep.graphicsio.pdf.PDFFontTable

public class PDFFontTable
extends FontTable

A table to remember which fonts were used while writing a pdf document. Entries to resource dictionaries and embedding of fonts can be done when the drawing is finished by calling addAll().

Version:
$Id: PDFFontTable.java,v 1.7 2005/01/04 00:45:55 duns Exp $
Author:
Simon Fischer
Source Code:
PDFFontTable.java

Nested Class Summary
 
Nested classes inherited from class org.freehep.graphicsio.font.FontTable
FontTable.Entry
 
Constructor Summary
PDFFontTable(PDFWriter pdf)
           
 
Method Summary
 int addFontDictionary()
          Adds all fonts to a dictionary named "FontList".
protected  String createFontReference(Font f)
          Creates the reference by numbering them.
 void embedAll(FontRenderContext context, boolean embed, String embedAs)
          Embeds all not yet embedded fonts to the file.
 void firstRequest(FontTable.Entry e, boolean embed, String embedAs)
          Called whenever a specific font is used for the first time.
 CharTable getEncodingTable()
          Returns a default CharTable to be used for normal text (not Symbol or Dingbats).
protected  Font substituteFont(Font font)
           
 
Methods inherited from class org.freehep.graphicsio.font.FontTable
fontReference, getEntries
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PDFFontTable

public PDFFontTable(PDFWriter pdf)
Method Detail

addFontDictionary

public int addFontDictionary()
                      throws IOException
Adds all fonts to a dictionary named "FontList".

Throws:
IOException

embedAll

public void embedAll(FontRenderContext context,
                     boolean embed,
                     String embedAs)
              throws IOException
Embeds all not yet embedded fonts to the file.

Throws:
IOException

getEncodingTable

public CharTable getEncodingTable()
Description copied from class: FontTable
Returns a default CharTable to be used for normal text (not Symbol or Dingbats).

Specified by:
getEncodingTable in class FontTable

firstRequest

public void firstRequest(FontTable.Entry e,
                         boolean embed,
                         String embedAs)
Description copied from class: FontTable
Called whenever a specific font is used for the first time. Subclasses may use this method to include the font instantly. This method may change the value of the reference by calling e.setReference(String) e.g. if it wants to substitute the font by a standard font that can be addressed under a name different from the generated one.

Specified by:
firstRequest in class FontTable

substituteFont

protected Font substituteFont(Font font)
Specified by:
substituteFont in class FontTable

createFontReference

protected String createFontReference(Font f)
Creates the reference by numbering them.

Specified by:
createFontReference in class FontTable
Returns:
"F"+currentFontIndex

FreeHEP API
Version current

Copyright © 2000-2004 FreeHEP, All Rights Reserved.