org.apache.poi.sl.draw
Class DrawFactory

java.lang.Object
  extended by org.apache.poi.sl.draw.DrawFactory

public class DrawFactory
extends java.lang.Object


Field Summary
protected static java.lang.ThreadLocal<DrawFactory> defaultFactory
           
 
Constructor Summary
DrawFactory()
           
 
Method Summary
 void drawShape(java.awt.Graphics2D graphics, Shape<?,?> shape, java.awt.geom.Rectangle2D bounds)
          Convenience method for drawing single shapes.
 void fixFonts(java.awt.Graphics2D graphics)
          Replace font families for Windows JVM 6, which contains a font rendering error.
 DrawBackground getDrawable(Background<?,?> shape)
           
 DrawConnectorShape getDrawable(ConnectorShape<?,?> shape)
           
 DrawFreeformShape getDrawable(FreeformShape<?,?> shape)
           
 DrawGraphicalFrame getDrawable(GraphicalFrame<?,?> shape)
           
 DrawGroupShape getDrawable(GroupShape<?,?> shape)
           
 DrawMasterSheet getDrawable(MasterSheet<?,?> sheet)
           
 DrawPictureShape getDrawable(PictureShape<?,?> shape)
           
 Drawable getDrawable(Shape<?,?> shape)
           
 DrawSheet getDrawable(Sheet<?,?> sheet)
           
 DrawSlide getDrawable(Slide<?,?> sheet)
           
 DrawTableShape getDrawable(TableShape<?,?> shape)
           
 DrawTextBox getDrawable(TextBox<?,?> shape)
           
 DrawTextParagraph getDrawable(TextParagraph<?,?,?> paragraph)
           
 DrawTextShape getDrawable(TextShape<?,?> shape)
           
 DrawFontManager getFontManager(java.awt.Graphics2D graphics)
          Return a FontManager, either registered beforehand or a default implementation
static DrawFactory getInstance(java.awt.Graphics2D graphics)
          Returns the DrawFactory, preferably via a graphics instance.
 DrawPaint getPaint(PlaceableShape<?,?> shape)
           
 DrawTextFragment getTextFragment(java.awt.font.TextLayout layout, java.text.AttributedString str)
           
static void setDefaultFactory(DrawFactory factory)
          Set a custom draw factory for the current thread.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

defaultFactory

protected static final java.lang.ThreadLocal<DrawFactory> defaultFactory
Constructor Detail

DrawFactory

public DrawFactory()
Method Detail

setDefaultFactory

public static void setDefaultFactory(DrawFactory factory)
Set a custom draw factory for the current thread. This is a fallback, for operations where usercode can't set a graphics context. Preferably use the rendering hint Drawable.DRAW_FACTORY to set the factory.

Parameters:
factory -

getInstance

public static DrawFactory getInstance(java.awt.Graphics2D graphics)
Returns the DrawFactory, preferably via a graphics instance. If graphics is null, the current thread local is checked or if it is not set, a new factory is created.

Parameters:
graphics - the current graphics context or null
Returns:
the draw factory

getDrawable

public Drawable getDrawable(Shape<?,?> shape)

getDrawable

public DrawSlide getDrawable(Slide<?,?> sheet)

getDrawable

public DrawSheet getDrawable(Sheet<?,?> sheet)

getDrawable

public DrawMasterSheet getDrawable(MasterSheet<?,?> sheet)

getDrawable

public DrawTextBox getDrawable(TextBox<?,?> shape)

getDrawable

public DrawFreeformShape getDrawable(FreeformShape<?,?> shape)

getDrawable

public DrawConnectorShape getDrawable(ConnectorShape<?,?> shape)

getDrawable

public DrawTableShape getDrawable(TableShape<?,?> shape)

getDrawable

public DrawTextShape getDrawable(TextShape<?,?> shape)

getDrawable

public DrawGroupShape getDrawable(GroupShape<?,?> shape)

getDrawable

public DrawPictureShape getDrawable(PictureShape<?,?> shape)

getDrawable

public DrawGraphicalFrame getDrawable(GraphicalFrame<?,?> shape)

getDrawable

public DrawTextParagraph getDrawable(TextParagraph<?,?,?> paragraph)

getDrawable

public DrawBackground getDrawable(Background<?,?> shape)

getTextFragment

public DrawTextFragment getTextFragment(java.awt.font.TextLayout layout,
                                        java.text.AttributedString str)

getPaint

public DrawPaint getPaint(PlaceableShape<?,?> shape)

drawShape

public void drawShape(java.awt.Graphics2D graphics,
                      Shape<?,?> shape,
                      java.awt.geom.Rectangle2D bounds)
Convenience method for drawing single shapes. For drawing whole slides, use Sheet.draw(Graphics2D)

Parameters:
graphics - the graphics context to draw to
shape - the shape
bounds - the bounds within the graphics context to draw to

fixFonts

public void fixFonts(java.awt.Graphics2D graphics)
Replace font families for Windows JVM 6, which contains a font rendering error. This is likely to be removed, when POI upgrades to JDK 7

Parameters:
graphics - the graphics context which will contain the font mapping

getFontManager

public DrawFontManager getFontManager(java.awt.Graphics2D graphics)
Return a FontManager, either registered beforehand or a default implementation

Parameters:
graphics - the graphics context holding potentially a font manager
Returns:
the font manager