Package org.apache.fop.render.ps
Class PSTextPainter
- java.lang.Object
-
- org.apache.batik.bridge.BasicTextPainter
-
- org.apache.batik.bridge.StrokingTextPainter
-
- org.apache.fop.svg.NativeTextPainter
-
- org.apache.fop.render.ps.PSTextPainter
-
- All Implemented Interfaces:
org.apache.batik.bridge.TextPainter
public class PSTextPainter extends NativeTextPainter
Renders the attributed character iterator of aTextNode. This class draws the text directly using PostScript text operators so the text is not drawn using shapes which makes the PS files larger.The text runs are split into smaller text runs that can be bundles in single calls of the xshow, yshow or xyshow operators. For outline text, the charpath operator is used.
-
-
Field Summary
-
Fields inherited from class org.apache.fop.svg.NativeTextPainter
font, fontFamilyResolver, fontInfo, log, tpi
-
Fields inherited from class org.apache.batik.bridge.StrokingTextPainter
ADJUST_ALL, ADJUST_SPACING, ALT_GLYPH_HANDLER, ANCHOR_TYPE, BIDI_LEVEL, FLOW_PARAGRAPH, FLOW_REGIONS, GVT_FONT, GVT_FONTS, PAINT_INFO, singleton, TEXT_COMPOUND_ID, TEXTPATH, WRITING_MODE, WRITING_MODE_RTL, WRITING_MODE_TTB, XPOS, YPOS
-
-
Constructor Summary
Constructors Constructor Description PSTextPainter(FontInfo fontInfo)Create a new PS text painter with the given font information.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidbeginTextObject()protected voidclip(java.awt.Shape shape)protected voidendTextObject()protected booleanisSupported(java.awt.Graphics2D g2d)Indicates whether the givenGraphics2Dinstance if compatible with this text painter implementation.protected voidpositionGlyph(java.awt.geom.Point2D prevPos, java.awt.geom.Point2D glyphPos, boolean reposition)protected voidpreparePainting(java.awt.Graphics2D g2d)protected voidrestoreGraphicsState()protected voidsaveGraphicsState()protected voidsetInitialTransform(java.awt.geom.AffineTransform transform)protected voidwriteGlyph(char glyph, java.awt.geom.AffineTransform localTransform)-
Methods inherited from class org.apache.fop.svg.NativeTextPainter
collectCharacters, computeTextRuns, getFontFamilyResolver, getTextLayoutFactory, getTextRunBoundaryAttributes, logCharacter, logTextRun, paintTextRun, paintTextRuns, reorderTextRuns, writeGlyphs
-
Methods inherited from class org.apache.batik.bridge.StrokingTextPainter
adjustChunkOffsets, computeTextRuns, createModifiedACIForFontMatching, getBounds2D, getDecorationOutline, getDecorationStrokeOutline, getHighlightShape, getInstance, getMark, getOutline, getSelected, getTextChunk, getTextChunkACIs, getTextRuns, hitTest, paint, paintDecorations, printAttrs, selectFirst, selectLast
-
-
-
-
Constructor Detail
-
PSTextPainter
public PSTextPainter(FontInfo fontInfo)
Create a new PS text painter with the given font information.- Parameters:
fontInfo- the font collection
-
-
Method Detail
-
isSupported
protected boolean isSupported(java.awt.Graphics2D g2d)
Indicates whether the givenGraphics2Dinstance if compatible with this text painter implementation.- Specified by:
isSupportedin classNativeTextPainter- Parameters:
g2d- the instance to check- Returns:
- true if the instance is compatible.
-
preparePainting
protected void preparePainting(java.awt.Graphics2D g2d)
- Specified by:
preparePaintingin classNativeTextPainter
-
saveGraphicsState
protected void saveGraphicsState() throws java.io.IOException- Specified by:
saveGraphicsStatein classNativeTextPainter- Throws:
java.io.IOException
-
restoreGraphicsState
protected void restoreGraphicsState() throws java.io.IOException- Specified by:
restoreGraphicsStatein classNativeTextPainter- Throws:
java.io.IOException
-
setInitialTransform
protected void setInitialTransform(java.awt.geom.AffineTransform transform) throws java.io.IOException- Specified by:
setInitialTransformin classNativeTextPainter- Throws:
java.io.IOException
-
clip
protected void clip(java.awt.Shape shape) throws java.io.IOException- Specified by:
clipin classNativeTextPainter- Throws:
java.io.IOException
-
beginTextObject
protected void beginTextObject() throws java.io.IOException- Specified by:
beginTextObjectin classNativeTextPainter- Throws:
java.io.IOException
-
endTextObject
protected void endTextObject() throws java.io.IOException- Specified by:
endTextObjectin classNativeTextPainter- Throws:
java.io.IOException
-
positionGlyph
protected void positionGlyph(java.awt.geom.Point2D prevPos, java.awt.geom.Point2D glyphPos, boolean reposition)- Specified by:
positionGlyphin classNativeTextPainter
-
writeGlyph
protected void writeGlyph(char glyph, java.awt.geom.AffineTransform localTransform) throws java.io.IOException- Specified by:
writeGlyphin classNativeTextPainter- Throws:
java.io.IOException
-
-