org.apache.fop.render.txt

## Class TXTRenderer

- java.lang.Object
- - org.apache.fop.render.AbstractRenderer
  - - org.apache.fop.render.PrintRenderer
    - - org.apache.fop.render.AbstractPathOrientedRenderer
      - - org.apache.fop.render.txt.TXTRenderer

All Implemented Interfaces:
  Constants, Renderer

    public class TXTRenderer
    extends AbstractPathOrientedRenderer

Renderer that renders areas to plain text.

This work was authored by Art Welch and Mark Lillywhite (mark-fop@inomial.com) [to use the new Renderer interface].

### Field Summary

Fields
`static int` `CHAR_HEIGHT` Height of one symbol in Courier font size of 10pt.
`static int` `CHAR_WIDTH` Width of one symbol in Courier font size of 10pt.
`static int` `LINE_LEADING` Leading of line containing Courier font size of 10pt.

### Fields inherited from class org.apache.fop.render.AbstractPathOrientedRenderer

`FOX_TRANSFORM`

### Fields inherited from class org.apache.fop.render.PrintRenderer

`embedFontInfoList, fontInfo`

### Fields inherited from class org.apache.fop.render.AbstractRenderer

`bindingOnEndEdge, bindingOnStartEdge, blockProgressionDirection, columnCount, columnEndIPPosition, columnGap, columnIndex, columnLeftIPPosition, columnRightIPPosition, columnStartIPPosition, columnWidth, containingBPPosition, containingIPPosition, currentBPPosition, currentIPPosition, currentPageViewport, inlineProgressionDirection, log, userAgent`

### Fields inherited from interface org.apache.fop.render.Renderer

`ROLE`

### Fields inherited from interface org.apache.fop.fo.Constants

`COMPOUND_COUNT, COMPOUND_MASK, COMPOUND_SHIFT, CP_BLOCK_PROGRESSION_DIRECTION, CP_CONDITIONALITY, CP_INLINE_PROGRESSION_DIRECTION, CP_LENGTH, CP_MAXIMUM, CP_MINIMUM, CP_OPTIMUM, CP_PRECEDENCE, CP_WITHIN_COLUMN, CP_WITHIN_LINE, CP_WITHIN_PAGE, EN_100, EN_200, EN_300, EN_400, EN_500, EN_600, EN_700, EN_800, EN_900, EN_ABSOLUTE, EN_ABSOLUTE_COLORMETRIC, EN_AFTER, EN_AFTER_EDGE, EN_ALL, EN_ALPHABETIC, EN_ALTERNATE, EN_ALWAYS, EN_ANY, EN_AUTO, EN_AUTO_EVEN, EN_AUTO_ODD, EN_AVOID, EN_BACKSLANT, EN_BASELINE, EN_BEFORE, EN_BEFORE_EDGE, EN_BIDI_OVERRIDE, EN_BLANK, EN_BLINK, EN_BLOCK, EN_BOLDER, EN_BOTH, EN_BOTTOM, EN_BOUNDED_IN_ONE_DIMENSION, EN_BT, EN_CAPITALIZE, EN_CAPTION, EN_CENTER, EN_CENTRAL, EN_CHARACTER_BY_CHARACTER, EN_COLLAPSE, EN_COLLAPSE_WITH_PRECEDENCE, EN_COLUMN, EN_CONDENSED, EN_CONSIDER_SHIFTS, EN_DASHED, EN_DISCARD, EN_DISREGARD_SHIFTS, EN_DOCUMENT, EN_DOTS, EN_DOTTED, EN_DOUBLE, EN_EMBED, EN_END, EN_END_ON_EVEN, EN_END_ON_ODD, EN_ERROR_IF_OVERFLOW, EN_EVEN, EN_EVEN_PAGE, EN_EXPANDED, EN_EXTRA_CONDENSED, EN_EXTRA_EXPANDED, EN_FALSE, EN_FIC, EN_FIRST, EN_FIRST_INCLUDING_CARRYOVER, EN_FIRST_STARTING, EN_FIXED, EN_FONT_HEIGHT, EN_FORCE, EN_FSWP, EN_GROOVE, EN_HANGING, EN_HIDDEN, EN_HIDE, EN_ICON, EN_IDEOGRAPHIC, EN_IGNORE, EN_IGNORE_IF_AFTER_LINEFEED, EN_IGNORE_IF_BEFORE_LINEFEED, EN_IGNORE_IF_SURROUNDING_LINEFEED, EN_INDEFINITE, EN_INDENT, EN_INHERIT, EN_INSET, EN_INSIDE, EN_INTEGER_PIXELS, EN_ITALIC, EN_JUSTIFY, EN_LARGER, EN_LAST, EN_LAST_ENDING, EN_LAST_STARTING, EN_LEAVE_SEPARATE, EN_LEFT, EN_LEWP, EN_LIGHTER, EN_LINE, EN_LINE_HEIGHT, EN_LINE_THROUGH, EN_LINK, EN_LOWERCASE, EN_LR, EN_LR_TB, EN_LSWP, EN_LTR, EN_MATHEMATICAL, EN_MAX_HEIGHT, EN_MENU, EN_MERGE, EN_MESSAGE_BOX, EN_MIDDLE, EN_NARROWER, EN_NEW, EN_NO_BLINK, EN_NO_CHANGE, EN_NO_FORCE, EN_NO_LIMIT, EN_NO_LINE_THROUGH, EN_NO_LINK, EN_NO_OVERLINE, EN_NO_UNDERLINE, EN_NO_WRAP, EN_NON_UNIFORM, EN_NONE, EN_NOREPEAT, EN_NORMAL, EN_NOT_BLANK, EN_OBLIQUE, EN_ODD, EN_ODD_PAGE, EN_ONLY, EN_OUTSET, EN_OUTSIDE, EN_OVERLINE, EN_PAGE, EN_PAGE_SEQUENCE, EN_PAGINATE, EN_PERCEPTUAL, EN_PRE, EN_PRESERVE, EN_REFERENCE_AREA, EN_RELATIVE, EN_RELATIVE_COLOMETRIC, EN_REPEAT, EN_REPEATX, EN_REPEATY, EN_REPLACE, EN_RESAMPLE_ANY_METHOD, EN_RESET_SIZE, EN_REST, EN_RETAIN, EN_RIDGE, EN_RIGHT, EN_RL, EN_RL_TB, EN_RTL, EN_RULE, EN_SATURATION, EN_SCALE_DOWN_TO_FIT, EN_SCALE_TO_FIT, EN_SCALE_UP_TO_FIT, EN_SCROLL, EN_SELECT_FIRST_FITTING, EN_SEMI_CONDENSED, EN_SEMI_EXPANDED, EN_SEPARATE, EN_SHOW, EN_SMALL_CAPS, EN_SMALL_CAPTION, EN_SMALLER, EN_SOLID, EN_SPACE, EN_START, EN_STATIC, EN_STATUS_BAR, EN_SUB, EN_SUPER, EN_SUPPRESS, EN_TABLE, EN_TABLE_FRAGMENT, EN_TB, EN_TB_LR, EN_TB_RL, EN_TEXT_AFTER_EDGE, EN_TEXT_BEFORE_EDGE, EN_TEXT_BOTTOM, EN_TEXT_TOP, EN_TOP, EN_TRADITIONAL, EN_TREAT_AS_SPACE, EN_TREAT_AS_ZERO_WIDTH_SPACE, EN_TRUE, EN_ULTRA_CONDENSED, EN_ULTRA_EXPANDED, EN_UNBOUNDED, EN_UNDERLINE, EN_UNIFORM, EN_UPPERCASE, EN_USE_FONT_METRICS, EN_USE_SCRIPT, EN_USECONTENT, EN_VISIBLE, EN_WIDER, EN_WRAP, ENUM_COUNT, FO_BASIC_LINK, FO_BIDI_OVERRIDE, FO_BLOCK, FO_BLOCK_CONTAINER, FO_BOOKMARK, FO_BOOKMARK_TITLE, FO_BOOKMARK_TREE, FO_CHANGE_BAR_BEGIN, FO_CHANGE_BAR_END, FO_CHARACTER, FO_COLOR_PROFILE, FO_CONDITIONAL_PAGE_MASTER_REFERENCE, FO_DECLARATIONS, FO_EXTERNAL_GRAPHIC, FO_FLOAT, FO_FLOW, FO_FLOW_ASSIGNMENT, FO_FLOW_MAP, FO_FLOW_NAME_SPECIFIER, FO_FLOW_SOURCE_LIST, FO_FLOW_TARGET_LIST, FO_FOLIO_PREFIX, FO_FOLIO_SUFFIX, FO_FOOTNOTE, FO_FOOTNOTE_BODY, FO_INDEX_KEY_REFERENCE, FO_INDEX_PAGE_CITATION_LIST, FO_INDEX_PAGE_CITATION_LIST_SEPARATOR, FO_INDEX_PAGE_CITATION_RANGE_SEPARATOR, FO_INDEX_PAGE_NUMBER_PREFIX, FO_INDEX_PAGE_NUMBER_SUFFIX, FO_INDEX_RANGE_BEGIN, FO_INDEX_RANGE_END, FO_INITIAL_PROPERTY_SET, FO_INLINE, FO_INLINE_CONTAINER, FO_INSTREAM_FOREIGN_OBJECT, FO_LAYOUT_MASTER_SET, FO_LEADER, FO_LIST_BLOCK, FO_LIST_ITEM, FO_LIST_ITEM_BODY, FO_LIST_ITEM_LABEL, FO_MARKER, FO_MULTI_CASE, FO_MULTI_PROPERTIES, FO_MULTI_PROPERTY_SET, FO_MULTI_SWITCH, FO_MULTI_TOGGLE, FO_PAGE_NUMBER, FO_PAGE_NUMBER_CITATION, FO_PAGE_NUMBER_CITATION_LAST, FO_PAGE_SEQUENCE, FO_PAGE_SEQUENCE_MASTER, FO_PAGE_SEQUENCE_WRAPPER, FO_REGION_AFTER, FO_REGION_BEFORE, FO_REGION_BODY, FO_REGION_END, FO_REGION_NAME_SPECIFIER, FO_REGION_START, FO_REPEATABLE_PAGE_MASTER_ALTERNATIVES, FO_REPEATABLE_PAGE_MASTER_REFERENCE, FO_RETRIEVE_MARKER, FO_RETRIEVE_TABLE_MARKER, FO_ROOT, FO_SCALING_VALUE_CITATION, FO_SIMPLE_PAGE_MASTER, FO_SINGLE_PAGE_MASTER_REFERENCE, FO_STATIC_CONTENT, FO_TABLE, FO_TABLE_AND_CAPTION, FO_TABLE_BODY, FO_TABLE_CAPTION, FO_TABLE_CELL, FO_TABLE_COLUMN, FO_TABLE_FOOTER, FO_TABLE_HEADER, FO_TABLE_ROW, FO_TITLE, FO_UNKNOWN_NODE, FO_WRAPPER, FRM_OBJ_COUNT, NOT_SET, PR_ABSOLUTE_POSITION, PR_ACTIVE_STATE, PR_ALIGNMENT_ADJUST, PR_ALIGNMENT_BASELINE, PR_AUTO_RESTORE, PR_AZIMUTH, PR_BACKGROUND, PR_BACKGROUND_ATTACHMENT, PR_BACKGROUND_COLOR, PR_BACKGROUND_IMAGE, PR_BACKGROUND_POSITION, PR_BACKGROUND_POSITION_HORIZONTAL, PR_BACKGROUND_POSITION_VERTICAL, PR_BACKGROUND_REPEAT, PR_BASELINE_SHIFT, PR_BLANK_OR_NOT_BLANK, PR_BLOCK_PROGRESSION_DIMENSION, PR_BORDER, PR_BORDER_AFTER_COLOR, PR_BORDER_AFTER_PRECEDENCE, PR_BORDER_AFTER_STYLE, PR_BORDER_AFTER_WIDTH, PR_BORDER_BEFORE_COLOR, PR_BORDER_BEFORE_PRECEDENCE, PR_BORDER_BEFORE_STYLE, PR_BORDER_BEFORE_WIDTH, PR_BORDER_BOTTOM, PR_BORDER_BOTTOM_COLOR, PR_BORDER_BOTTOM_STYLE, PR_BORDER_BOTTOM_WIDTH, PR_BORDER_COLLAPSE, PR_BORDER_COLOR, PR_BORDER_END_COLOR, PR_BORDER_END_PRECEDENCE, PR_BORDER_END_STYLE, PR_BORDER_END_WIDTH, PR_BORDER_LEFT, PR_BORDER_LEFT_COLOR, PR_BORDER_LEFT_STYLE, PR_BORDER_LEFT_WIDTH, PR_BORDER_RIGHT, PR_BORDER_RIGHT_COLOR, PR_BORDER_RIGHT_STYLE, PR_BORDER_RIGHT_WIDTH, PR_BORDER_SEPARATION, PR_BORDER_SPACING, PR_BORDER_START_COLOR, PR_BORDER_START_PRECEDENCE, PR_BORDER_START_STYLE, PR_BORDER_START_WIDTH, PR_BORDER_STYLE, PR_BORDER_TOP, PR_BORDER_TOP_COLOR, PR_BORDER_TOP_STYLE, PR_BORDER_TOP_WIDTH, PR_BORDER_WIDTH, PR_BOTTOM, PR_BREAK_AFTER, PR_BREAK_BEFORE, PR_CAPTION_SIDE, PR_CASE_NAME, PR_CASE_TITLE, PR_CHANGE_BAR_CLASS, PR_CHANGE_BAR_COLOR, PR_CHANGE_BAR_OFFSET, PR_CHANGE_BAR_PLACEMENT, PR_CHANGE_BAR_STYLE, PR_CHANGE_BAR_WIDTH, PR_CHARACTER, PR_CLEAR, PR_CLIP, PR_COLOR, PR_COLOR_PROFILE_NAME, PR_COLUMN_COUNT, PR_COLUMN_GAP, PR_COLUMN_NUMBER, PR_COLUMN_WIDTH, PR_CONTENT_HEIGHT, PR_CONTENT_TYPE, PR_CONTENT_WIDTH, PR_COUNTRY, PR_CUE, PR_CUE_AFTER, PR_CUE_BEFORE, PR_DESTINATION_PLACEMENT_OFFSET, PR_DIRECTION, PR_DISPLAY_ALIGN, PR_DOMINANT_BASELINE, PR_ELEVATION, PR_EMPTY_CELLS, PR_END_INDENT, PR_ENDS_ROW, PR_EXTENT, PR_EXTERNAL_DESTINATION, PR_FLOAT, PR_FLOW_MAP_NAME, PR_FLOW_MAP_REFERENCE, PR_FLOW_NAME, PR_FLOW_NAME_REFERENCE, PR_FONT, PR_FONT_FAMILY, PR_FONT_SELECTION_STRATEGY, PR_FONT_SIZE, PR_FONT_SIZE_ADJUST, PR_FONT_STRETCH, PR_FONT_STYLE, PR_FONT_VARIANT, PR_FONT_WEIGHT, PR_FORCE_PAGE_COUNT, PR_FORMAT, PR_GLYPH_ORIENTATION_HORIZONTAL, PR_GLYPH_ORIENTATION_VERTICAL, PR_GROUPING_SEPARATOR, PR_GROUPING_SIZE, PR_HEIGHT, PR_HYPHENATE, PR_HYPHENATION_CHARACTER, PR_HYPHENATION_KEEP, PR_HYPHENATION_LADDER_COUNT, PR_HYPHENATION_PUSH_CHARACTER_COUNT, PR_HYPHENATION_REMAIN_CHARACTER_COUNT, PR_ID, PR_INDEX_CLASS, PR_INDEX_KEY, PR_INDICATE_DESTINATION, PR_INITIAL_PAGE_NUMBER, PR_INLINE_PROGRESSION_DIMENSION, PR_INTERNAL_DESTINATION, PR_INTRINSIC_SCALE_VALUE, PR_INTRUSION_DISPLACE, PR_KEEP_TOGETHER, PR_KEEP_WITH_NEXT, PR_KEEP_WITH_PREVIOUS, PR_LANGUAGE, PR_LAST_LINE_END_INDENT, PR_LEADER_ALIGNMENT, PR_LEADER_LENGTH, PR_LEADER_PATTERN, PR_LEADER_PATTERN_WIDTH, PR_LEFT, PR_LETTER_SPACING, PR_LETTER_VALUE, PR_LINE_HEIGHT, PR_LINE_HEIGHT_SHIFT_ADJUSTMENT, PR_LINE_STACKING_STRATEGY, PR_LINEFEED_TREATMENT, PR_MARGIN, PR_MARGIN_BOTTOM, PR_MARGIN_LEFT, PR_MARGIN_RIGHT, PR_MARGIN_TOP, PR_MARKER_CLASS_NAME, PR_MASTER_NAME, PR_MASTER_REFERENCE, PR_MAX_HEIGHT, PR_MAX_WIDTH, PR_MAXIMUM_REPEATS, PR_MEDIA_USAGE, PR_MERGE_PAGES_ACROSS_INDEX_KEY_REFERENCES, PR_MERGE_RANGES_ACROSS_INDEX_KEY_REFERENCES, PR_MERGE_SEQUENTIAL_PAGE_NUMBERS, PR_MIN_HEIGHT, PR_MIN_WIDTH, PR_NUMBER_COLUMNS_REPEATED, PR_NUMBER_COLUMNS_SPANNED, PR_NUMBER_ROWS_SPANNED, PR_ODD_OR_EVEN, PR_ORPHANS, PR_OVERFLOW, PR_PADDING, PR_PADDING_AFTER, PR_PADDING_BEFORE, PR_PADDING_BOTTOM, PR_PADDING_END, PR_PADDING_LEFT, PR_PADDING_RIGHT, PR_PADDING_START, PR_PADDING_TOP, PR_PAGE_BREAK_AFTER, PR_PAGE_BREAK_BEFORE, PR_PAGE_BREAK_INSIDE, PR_PAGE_CITATION_STRATEGY, PR_PAGE_HEIGHT, PR_PAGE_NUMBER_TREATMENT, PR_PAGE_POSITION, PR_PAGE_WIDTH, PR_PAUSE, PR_PAUSE_AFTER, PR_PAUSE_BEFORE, PR_PITCH, PR_PITCH_RANGE, PR_PLAY_DURING, PR_POSITION, PR_PRECEDENCE, PR_PROVISIONAL_DISTANCE_BETWEEN_STARTS, PR_PROVISIONAL_LABEL_SEPARATION, PR_REF_ID, PR_REF_INDEX_KEY, PR_REFERENCE_ORIENTATION, PR_REGION_NAME, PR_REGION_NAME_REFERENCE, PR_RELATIVE_ALIGN, PR_RELATIVE_POSITION, PR_RENDERING_INTENT, PR_RETRIEVE_BOUNDARY, PR_RETRIEVE_BOUNDARY_WITHIN_TABLE, PR_RETRIEVE_CLASS_NAME, PR_RETRIEVE_POSITION, PR_RETRIEVE_POSITION_WITHIN_TABLE, PR_RICHNESS, PR_RIGHT, PR_ROLE, PR_RULE_STYLE, PR_RULE_THICKNESS, PR_SCALING, PR_SCALING_METHOD, PR_SCORE_SPACES, PR_SCRIPT, PR_SHOW_DESTINATION, PR_SIZE, PR_SOURCE_DOCUMENT, PR_SPACE_AFTER, PR_SPACE_BEFORE, PR_SPACE_END, PR_SPACE_START, PR_SPAN, PR_SPEAK, PR_SPEAK_HEADER, PR_SPEAK_NUMERAL, PR_SPEAK_PUNCTUATION, PR_SPEECH_RATE, PR_SRC, PR_START_INDENT, PR_STARTING_STATE, PR_STARTS_ROW, PR_STRESS, PR_SUPPRESS_AT_LINE_BREAK, PR_SWITCH_TO, PR_TABLE_LAYOUT, PR_TABLE_OMIT_FOOTER_AT_BREAK, PR_TABLE_OMIT_HEADER_AT_BREAK, PR_TARGET_PRESENTATION_CONTEXT, PR_TARGET_PROCESSING_CONTEXT, PR_TARGET_STYLESHEET, PR_TEXT_ALIGN, PR_TEXT_ALIGN_LAST, PR_TEXT_ALTITUDE, PR_TEXT_DECORATION, PR_TEXT_DEPTH, PR_TEXT_INDENT, PR_TEXT_SHADOW, PR_TEXT_TRANSFORM, PR_TOP, PR_TREAT_AS_WORD_SPACE, PR_UNICODE_BIDI, PR_VERTICAL_ALIGN, PR_VISIBILITY, PR_VOICE_FAMILY, PR_VOLUME, PR_WHITE_SPACE, PR_WHITE_SPACE_COLLAPSE, PR_WHITE_SPACE_TREATMENT, PR_WIDOWS, PR_WIDTH, PR_WORD_SPACING, PR_WRAP_OPTION, PR_WRITING_MODE, PR_X_ABBREVIATION, PR_X_ALT_TEXT, PR_X_AUTO_TOGGLE, PR_X_BACKGROUND_IMAGE_HEIGHT, PR_X_BACKGROUND_IMAGE_WIDTH, PR_X_BORDER_AFTER_END_RADIUS, PR_X_BORDER_AFTER_RADIUS_END, PR_X_BORDER_AFTER_RADIUS_START, PR_X_BORDER_AFTER_START_RADIUS, PR_X_BORDER_BEFORE_END_RADIUS, PR_X_BORDER_BEFORE_RADIUS_END, PR_X_BORDER_BEFORE_RADIUS_START, PR_X_BORDER_BEFORE_START_RADIUS, PR_X_BORDER_END_RADIUS_AFTER, PR_X_BORDER_END_RADIUS_BEFORE, PR_X_BORDER_RADIUS, PR_X_BORDER_START_RADIUS_AFTER, PR_X_BORDER_START_RADIUS_BEFORE, PR_X_DISABLE_COLUMN_BALANCING, PR_X_HEADER_COLUMN, PR_X_LAYER, PR_X_NUMBER_CONVERSION_FEATURES, PR_X_ORPHAN_CONTENT_LIMIT, PR_X_WIDOW_CONTENT_LIMIT, PR_X_XML_BASE, PR_XML_LANG, PR_Z_INDEX, PROPERTY_COUNT, PROPERTY_MASK`

### Constructor Summary

Constructors
Constructor and Description
`TXTRenderer(FOUserAgent userAgent)` Constructs a newly allocated `TXTRenderer` object.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `addChar(int x, int y, char ch, boolean ischar)` Add char to text buffer.
`protected void` `addString(int row, int col, String s)` Adds string to text buffer (`charData`).
`protected void` `beginTextObject()` Does nothing.
`protected List` `breakOutOfStateStack()` Does nothing.
`protected void` `clip()` Does nothing.
`protected void` `clipRect(float x, float y, float width, float height)` Does nothing.
`protected void` `closePath()` Does nothing.
`protected void` `concatenateTransformationMatrix(AffineTransform at)` Concatenates the current transformation matrix with the given one, therefore establishing a new coordinate system.
`protected void` `drawBackAndBorders(Area area, float startx, float starty, float width, float height)` Draw the background and borders.
`protected void` `drawBorderLine(float x1, float y1, float x2, float y2, boolean horz, boolean startOrBefore, int style, Color col)` Draw a border segment of an XSL-FO style border.
`protected void` `drawImage(String url, Rectangle2D pos, Map foreignAttributes)` Draw an image at the indicated location.
`protected void` `endLayer()` Finish current optional content group layer.
`protected void` `endTextObject()` Does nothing.
`protected void` `endVParea()` Signals exit from a viewport area.
`protected void` `fillRect(float x, float y, float width, float height)` Fills a rectangular area with the current filling char.
`String` `getMimeType()` Get the MIME type of the renderer.
`boolean` `isLayInside(int x, int y)` Indicates if point (x, y) lay inside currentPage.
`protected void` `lineTo(float x, float y)` Does nothing.
`protected void` `moveTo(float x, float y)` Does nothing.
`protected void` `putChar(int x, int y, char ch, boolean ischar)` Add char to text or background buffer.
`void` `renderImage(Image image, Rectangle2D pos)` Fills image rectangle with a `IMAGE_CHAR`.
`void` `renderPage(PageViewport page)` Tells the renderer to render a particular page.
`protected void` `renderText(TextArea area)` Render TextArea to Text.
`protected void` `restoreGraphicsState()` Does nothing.
`protected void` `restoreStateStackAfterBreakOut(List breakOutList)` Does nothing.
`protected void` `saveGraphicsState()` Does nothing.
`void` `setEncoding(String encoding)` Sets the encoding of the target file.
`protected void` `startLayer(String layer)` Establish new optional content group layer.
`void` `startRenderer(OutputStream os)` Initiates the rendering phase.
`protected void` `startVParea(CTM ctm, Rectangle clippingRect)` Establishes a new viewport area.
`void` `stopRenderer()` Signals the end of the rendering phase.
`protected int` `toMilli(float x)` Returns the closest integer to the multiplication of a number and 1000.
`protected void` `updateColor(Color col, boolean fill)` Changes current filling char.

### Methods inherited from class org.apache.fop.render.AbstractPathOrientedRenderer

`clipBackground, drawBackAndBorders, drawBackground, drawBackground, drawBorders, drawBorders, drawImage, establishTransformationMatrix, handleBlockTraits, handleRegionTraits, renderBlockViewport, renderFlow, renderForeignObject, renderInlineAreaBackAndBorders, renderInlineViewport, renderReferenceArea, renderTextDecoration`

### Methods inherited from class org.apache.fop.render.PrintRenderer

`addFontList, createRendererContext, getFontFromArea, getFontInfo, getFontList, getInternalFontNameForArea, instantiateRendererContext, renderDocument, setFontList, setupFontInfo`

### Methods inherited from class org.apache.fop.render.AbstractRenderer

`convertTitleToString, drawChangeBars, getBeginOffset, getCurrentPageViewport, getGraphics2DAdapter, getImageAdapter, getUserAgent, maybeEndLayer, maybeStartLayer, mptToPt, preparePage, processOffDocumentItem, ptToMpt, renderBeforeFloat, renderBlock, renderBlocks, renderBodyRegion, renderContainer, renderFootnote, renderInlineArea, renderInlineBlock, renderInlineBlockParent, renderInlineParent, renderInlineSpace, renderLeader, renderLineArea, renderMainReference, renderPageAreas, renderRegion, renderRegionViewport, renderSpace, renderWord, renderXML, setBeginOffset, setDocumentLocale, startPageSequence, startPageSequence, supportsOutOfOrder`

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

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

### Field Detail

#### LINE_LEADING

    public static final int LINE_LEADING

Leading of line containing Courier font size of 10pt.

See Also:
  Constant Field Values

#### CHAR_HEIGHT

    public static final int CHAR_HEIGHT

Height of one symbol in Courier font size of 10pt.

See Also:
  Constant Field Values

#### CHAR_WIDTH

    public static final int CHAR_WIDTH

Width of one symbol in Courier font size of 10pt.

See Also:
  Constant Field Values

### Constructor Detail

#### TXTRenderer

    public TXTRenderer(FOUserAgent userAgent)

Constructs a newly allocated `TXTRenderer` object.

Parameters:
  `userAgent` - the user agent that contains configuration details. This cannot be null.

### Method Detail

#### getMimeType

    public String getMimeType()

Get the MIME type of the renderer.

Returns:
  The MIME type of the renderer, may return null if not applicable.

#### setEncoding

    public void setEncoding(String encoding)

Sets the encoding of the target file.

Parameters:
  `encoding` - the encoding, null to select the default encoding (UTF-8)

#### isLayInside

    public boolean isLayInside(int x,
                               int y)

Indicates if point (x, y) lay inside currentPage.

Parameters:
  `x` - x coordinate
  `y` - y coordinate
Returns:
  true if point lay inside page

#### addChar

    protected void addChar(int x,
                           int y,
                           char ch,
                           boolean ischar)

Add char to text buffer.

Parameters:
  `x` - x coordinate
  `y` - y coordinate
  `ch` - char to add
  `ischar` - boolean, repersenting is character adding to text buffer

#### putChar

    protected void putChar(int x,
                           int y,
                           char ch,
                           boolean ischar)

Add char to text or background buffer.

Parameters:
  `x` - x coordinate
  `y` - x coordinate
  `ch` - char to add
  `ischar` - indicates if it char or background

#### addString

    protected void addString(int row,
                             int col,
                             String s)

Adds string to text buffer (`charData`).

Chars of string map in turn.

Parameters:
  `row` - x coordinate
  `col` - y coordinate
  `s` - string to add

#### renderText

    protected void renderText(TextArea area)

Render TextArea to Text.

Overrides:
  `renderText` in class `AbstractRenderer`
Parameters:
  `area` - inline area to render

#### renderPage

    public void renderPage(PageViewport page)
                    throws IOException,
                           FOPException

Tells the renderer to render a particular page. A renderer typically responds by packing up the current page and writing it immediately to the output device.

Specified by:
  `renderPage` in interface `Renderer`
Overrides:
  `renderPage` in class `AbstractRenderer`
Parameters:
  `page` - The page to be rendered
Throws:
  `IOException` - if an I/O error occurs
  `FOPException` - if a FOP interal error occurs.

#### startRenderer

    public void startRenderer(OutputStream os)
                       throws IOException

Initiates the rendering phase. This must only be called once for a rendering. If stopRenderer is called then this may be called again for a new document rendering.

Specified by:
  `startRenderer` in interface `Renderer`
Overrides:
  `startRenderer` in class `AbstractRenderer`
Parameters:
  `os` - The OutputStream to use for output
Throws:
  `IOException` - If an I/O error occurs

#### stopRenderer

    public void stopRenderer()
                      throws IOException

Signals the end of the rendering phase. The renderer should reset to an initial state and dispose of any resources for the completed rendering.

Specified by:
  `stopRenderer` in interface `Renderer`
Overrides:
  `stopRenderer` in class `AbstractRenderer`
Throws:
  `IOException` - If an I/O error occurs

#### restoreStateStackAfterBreakOut

    protected void restoreStateStackAfterBreakOut(List breakOutList)

Does nothing. Restores the state stack after a break out.

Specified by:
  `restoreStateStackAfterBreakOut` in class `AbstractPathOrientedRenderer`
Parameters:
  `breakOutList` - the state stack to restore.

#### breakOutOfStateStack

    protected List breakOutOfStateStack()

Does nothing.

Specified by:
  `breakOutOfStateStack` in class `AbstractPathOrientedRenderer`
Returns:
  null the saved state stack to recreate later

#### saveGraphicsState

    protected void saveGraphicsState()

Does nothing. Saves the graphics state of the rendering engine.

Specified by:
  `saveGraphicsState` in class `AbstractPathOrientedRenderer`

#### restoreGraphicsState

    protected void restoreGraphicsState()

Does nothing. Restores the last graphics state of the rendering engine.

Specified by:
  `restoreGraphicsState` in class `AbstractPathOrientedRenderer`

#### beginTextObject

    protected void beginTextObject()

Does nothing. Indicates the beginning of a text object.

Specified by:
  `beginTextObject` in class `AbstractPathOrientedRenderer`

#### endTextObject

    protected void endTextObject()

Does nothing. Indicates the end of a text object.

Specified by:
  `endTextObject` in class `AbstractPathOrientedRenderer`

#### clip

    protected void clip()

Does nothing. Clip using the current path.

Specified by:
  `clip` in class `AbstractPathOrientedRenderer`

#### clipRect

    protected void clipRect(float x,
                            float y,
                            float width,
                            float height)

Does nothing. Clip using a rectangular area.

Specified by:
  `clipRect` in class `AbstractPathOrientedRenderer`
Parameters:
  `x` - the x coordinate (in points)
  `y` - the y coordinate (in points)
  `width` - the width of the rectangle (in points)
  `height` - the height of the rectangle (in points)

#### moveTo

    protected void moveTo(float x,
                          float y)

Does nothing. Moves the current point to (x, y), omitting any connecting line segment.

Specified by:
  `moveTo` in class `AbstractPathOrientedRenderer`
Parameters:
  `x` - x coordinate
  `y` - y coordinate

#### lineTo

    protected void lineTo(float x,
                          float y)

Does nothing. Appends a straight line segment from the current point to (x, y). The new current point is (x, y).

Specified by:
  `lineTo` in class `AbstractPathOrientedRenderer`
Parameters:
  `x` - x coordinate
  `y` - y coordinate

#### closePath

    protected void closePath()

Does nothing. Closes the current subpath by appending a straight line segment from the current point to the starting point of the subpath.

Specified by:
  `closePath` in class `AbstractPathOrientedRenderer`

#### fillRect

    protected void fillRect(float x,
                            float y,
                            float width,
                            float height)

Fills a rectangular area with the current filling char. Fill a rectangular area.

Specified by:
  `fillRect` in class `AbstractPathOrientedRenderer`
Parameters:
  `x` - the x coordinate
  `y` - the y coordinate
  `width` - the width of the rectangle
  `height` - the height of the rectangle

#### updateColor

    protected void updateColor(Color col,
                               boolean fill)

Changes current filling char. Establishes a new foreground or fill color.

Specified by:
  `updateColor` in class `AbstractPathOrientedRenderer`
Parameters:
  `col` - the color to apply (null skips this operation)
  `fill` - true to set the fill color, false for the foreground color

#### drawImage

    protected void drawImage(String url,
                             Rectangle2D pos,
                             Map foreignAttributes)

Draw an image at the indicated location.

Specified by:
  `drawImage` in class `AbstractPathOrientedRenderer`
Parameters:
  `url` - the URI/URL of the image
  `pos` - the position of the image
  `foreignAttributes` - an optional Map with foreign attributes, may be null

#### renderImage

    public void renderImage(Image image,
                            Rectangle2D pos)

Fills image rectangle with a `IMAGE_CHAR`.

Overrides:
  `renderImage` in class `AbstractRenderer`
Parameters:
  `image` - the base image
  `pos` - the position of the image

#### toMilli

    protected int toMilli(float x)

Returns the closest integer to the multiplication of a number and 1000.

Parameters:
  `x` - the value of the argument, multiplied by 1000 and rounded
Returns:
  the value of the argument multiplied by 1000 and rounded to the nearest integer

#### drawBorderLine

    protected void drawBorderLine(float x1,
                                  float y1,
                                  float x2,
                                  float y2,
                                  boolean horz,
                                  boolean startOrBefore,
                                  int style,
                                  Color col)

Draw a border segment of an XSL-FO style border.

Specified by:
  `drawBorderLine` in class `AbstractPathOrientedRenderer`
Parameters:
  `x1` - starting x coordinate
  `y1` - starting y coordinate
  `x2` - ending x coordinate
  `y2` - ending y coordinate
  `horz` - true for horizontal border segments, false for vertical border segments
  `startOrBefore` - true for border segments on the start or before edge, false for end or after.
  `style` - the border style (one of Constants.EN_DASHED etc.)
  `col` - the color for the border segment

#### drawBackAndBorders

    protected void drawBackAndBorders(Area area,
                                      float startx,
                                      float starty,
                                      float width,
                                      float height)

Draw the background and borders. This draws the background and border traits for an area given the position.

Overrides:
  `drawBackAndBorders` in class `AbstractPathOrientedRenderer`
Parameters:
  `area` - the area to get the traits from
  `startx` - the start x position
  `starty` - the start y position
  `width` - the width of the area
  `height` - the height of the area

#### startVParea

    protected void startVParea(CTM ctm,
                               Rectangle clippingRect)

Establishes a new viewport area.

Specified by:
  `startVParea` in class `AbstractRenderer`
Parameters:
  `ctm` - the coordinate transformation matrix to use
  `clippingRect` - the clipping rectangle if the viewport should be clipping, null if no clipping is performed.

#### endVParea

    protected void endVParea()

Signals exit from a viewport area. Subclasses can restore transformation matrices valid before the viewport area was started.

Specified by:
  `endVParea` in class `AbstractRenderer`

#### startLayer

    protected void startLayer(String layer)

Establish new optional content group layer.

Specified by:
  `startLayer` in class `AbstractRenderer`
Parameters:
  `layer` - name of layer

#### endLayer

    protected void endLayer()

Finish current optional content group layer.

Specified by:
  `endLayer` in class `AbstractRenderer`

#### concatenateTransformationMatrix

    protected void concatenateTransformationMatrix(AffineTransform at)

Concatenates the current transformation matrix with the given one, therefore establishing a new coordinate system.

Specified by:
  `concatenateTransformationMatrix` in class `AbstractPathOrientedRenderer`
Parameters:
  `at` - the transformation matrix to process (coordinates in points)