org.apache.fop.afp.svg

## Class AFPTextPainter

- java.lang.Object
- - org.apache.fop.svg.AbstractFOPTextPainter
  - - org.apache.fop.afp.svg.AFPTextPainter

- All Implemented Interfaces:
    org.apache.batik.bridge.TextPainter

      public class AFPTextPainter
      extends AbstractFOPTextPainter

  Renders the attributed character iterator of some text. This class draws the text directly into the AFPGraphics2D so that the text is not drawn using shapes. If the text is simple enough to draw then it sets the font and calls drawString. If the text is complex or the cannot be translated into a simple drawString the StrokingTextPainter is used instead.

- - ### Field Summary

    - ### Fields inherited from class org.apache.fop.svg.AbstractFOPTextPainter

      `log`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AFPTextPainter(FOPTextHandler nativeTextHandler, org.apache.batik.bridge.FontFamilyResolver fopFontFamilyResolver)` Create a new text painter with the given font information.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | `isSupportedGraphics2D(Graphics2D g2d)` Checks whether the Graphics2D is compatible with this text painter.

    - ### Methods inherited from class org.apache.fop.svg.AbstractFOPTextPainter

      `getBounds2D, getGeometryBounds, getHighlightShape, getMark, getOutline, getSelected, getText, paint, selectAt, selectFirst, selectLast, selectTo`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AFPTextPainter

          public AFPTextPainter(FOPTextHandler nativeTextHandler,
                                org.apache.batik.bridge.FontFamilyResolver fopFontFamilyResolver)

      Create a new text painter with the given font information.
      Parameters:
        `nativeTextHandler` - the NativeTextHandler instance used for text painting
        `fopFontFamilyResolver` - the font resolver

  - ### Method Detail

    - #### isSupportedGraphics2D

          protected boolean isSupportedGraphics2D(Graphics2D g2d)

      Checks whether the Graphics2D is compatible with this text painter. Batik may pass in a Graphics2D instance that paints on a special buffer image, for example for filtering operations. In that case, the text painter should be bypassed.
      Specified by:
        `isSupportedGraphics2D` in class `AbstractFOPTextPainter`
      Parameters:
        `g2d` - the Graphics2D instance to check
      Returns:
        true if the Graphics2D is supported

Copyright © 2025 Apache Software Foundation. All rights reserved.