org.apache.poi.sl.draw
Interface DrawFontManager

All Known Implementing Classes:
DrawFontManagerDefault

public interface DrawFontManager

Manages fonts when rendering slides. Use this class to handle unknown / missing fonts or to substitute fonts


Method Summary
 java.awt.Font createAWTFont(java.awt.Graphics2D graphics, FontInfo fontInfo, double size, boolean bold, boolean italic)
          Create an AWT font object with the given attributes
 FontInfo getFallbackFont(java.awt.Graphics2D graphics, FontInfo fontInfo)
          In case the original font doesn't contain a glyph, use the returned fallback font as an alternative
 FontInfo getMappedFont(java.awt.Graphics2D graphics, FontInfo fontInfo)
          select a font to be used to paint text
 java.lang.String mapFontCharset(java.awt.Graphics2D graphics, FontInfo fontInfo, java.lang.String text)
          Map text charset depending on font family.
 

Method Detail

getMappedFont

FontInfo getMappedFont(java.awt.Graphics2D graphics,
                       FontInfo fontInfo)
select a font to be used to paint text

Parameters:
graphics - the graphics context to request additional rendering hints
fontInfo - the font info object corresponding to the text run font
Returns:
the font to be used to paint text

getFallbackFont

FontInfo getFallbackFont(java.awt.Graphics2D graphics,
                         FontInfo fontInfo)
In case the original font doesn't contain a glyph, use the returned fallback font as an alternative

Parameters:
graphics - the graphics context to request additional rendering hints
fontInfo - the font info object corresponding to the text run font
Returns:
the font to be used as a fallback for the original typeface

mapFontCharset

java.lang.String mapFontCharset(java.awt.Graphics2D graphics,
                                FontInfo fontInfo,
                                java.lang.String text)
Map text charset depending on font family.

Currently this only maps for wingdings font (into unicode private use area)

Parameters:
graphics - the graphics context to request additional rendering hints
fontInfo - the font info object corresponding to the text run font
text - the raw text
Returns:
String with mapped codepoints
See Also:
Drawing exotic fonts in a java applet, StringUtil.mapMsCodepointString(String)

createAWTFont

java.awt.Font createAWTFont(java.awt.Graphics2D graphics,
                            FontInfo fontInfo,
                            double size,
                            boolean bold,
                            boolean italic)
Create an AWT font object with the given attributes

Parameters:
graphics - the graphics context to request additional rendering hints
fontInfo - the font info object corresponding to the text run font
size - the font size in points
bold - true if the font is bold
italic - true if the font is italic
Returns:
the AWT font object