org.apache.fop.render.rtf.rtflib.rtfdoc

## Class RtfParagraph

- java.lang.Object
- - org.apache.fop.render.rtf.rtflib.rtfdoc.RtfElement
  - - org.apache.fop.render.rtf.rtflib.rtfdoc.RtfContainer
    - - org.apache.fop.render.rtf.rtflib.rtfdoc.RtfBookmarkContainerImpl
      - - org.apache.fop.render.rtf.rtflib.rtfdoc.RtfParagraph

- All Implemented Interfaces:
    IRtfBookmarkContainer, IRtfExternalGraphicContainer, IRtfHyperLinkContainer, IRtfPageBreakContainer, IRtfPageNumberCitationContainer, IRtfPageNumberContainer, IRtfTextContainer

      public class RtfParagraph
      extends RtfBookmarkContainerImpl
      implements IRtfTextContainer, IRtfPageBreakContainer, IRtfHyperLinkContainer, IRtfExternalGraphicContainer, IRtfPageNumberContainer, IRtfPageNumberCitationContainer

  Model of an RTF paragraph, which can contain RTF text elements.

  This work was authored by Bertrand Delacretaz (bdelacretaz@codeconsult.ch), Andreas Putz (a.putz@skynamics.com), and Boris Poudérous (boris.pouderous@free.fr).

- - ### Field Summary

    - ### Fields inherited from class org.apache.fop.render.rtf.rtflib.rtfdoc.RtfElement

      `attrib, parent, writer`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getText()` Accessor for the paragraph text
    `RtfAttributes` | `getTextAttributes()` accessor for text attributes
    `RtfAttributes` | `getTextContainerAttributes()` IRtfTextContainer requirement: return a copy of our attributes
    `RtfHyperLink` | `newHyperLink(String str, RtfAttributes attr)` Creates a new hyperlink.
    `RtfExternalGraphic` | `newImage()` Start a new external graphic after closing all other elements
    `void` | `newLineBreak()` add a line break
    `void` | `newPageBreak()` add a page break
    `RtfPageNumber` | `newPageNumber()` Add a page number
    `RtfPageNumberCitation` | `newPageNumberCitation(String id)` Added by Boris POUDEROUS on 2002/07/09
    `RtfText` | `newText(String str)` Close current text run if any and start a new one with default attributes
    `RtfText` | `newText(String str, RtfAttributes attr)` Close current text run if any and start a new one
    `protected boolean` | `okToWriteRtf()` Depending on RtfOptions, do not emit any RTF for empty paragraphs
    `void` | `setKeepn()` Set the keepn attribute for this paragraph
    `void` | `setResetProperties()` Force reset properties
    `protected void` | `writeRtfPrefix()` Overridden to write our attributes before our content
    `protected void` | `writeRtfSuffix()` Overridden to close paragraph

    - ### Methods inherited from class org.apache.fop.render.rtf.rtflib.rtfdoc.RtfBookmarkContainerImpl

      `newBookmark`

    - ### Methods inherited from class org.apache.fop.render.rtf.rtflib.rtfdoc.RtfContainer

      `addChild, findChildren, getChildCount, getChildren, isEmpty, setChildren, setOptions, toString, writeRtfContent`

    - ### Methods inherited from class org.apache.fop.render.rtf.rtflib.rtfdoc.RtfElement

      `close, getParentOfClass, getRtfAttributes, newLine, writeAttributes, writeControlWord, writeControlWordNS, writeExceptionInRtf, writeGroupMark, writeOneAttribute, writeOneAttributeNS, writeRtf, writeStarControlWord, writeStarControlWordNS`

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

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

- - ### Method Detail

    - #### getText

          public String getText()

      Accessor for the paragraph text
      Returns:
        the paragraph text

    - #### setKeepn

          public void setKeepn()

      Set the keepn attribute for this paragraph

    - #### setResetProperties

          public void setResetProperties()

      Force reset properties

    - #### getTextContainerAttributes

          public RtfAttributes getTextContainerAttributes()
                                                   throws FOPException

      IRtfTextContainer requirement: return a copy of our attributes
      Specified by:
        `getTextContainerAttributes` in interface `IRtfTextContainer`
      Returns:
        a copy of this paragraphs attributes
      Throws:
        `FOPException` - if attributes cannot be cloned

    - #### writeRtfPrefix

          protected void writeRtfPrefix()
                                 throws IOException

      Overridden to write our attributes before our content
      Overrides:
        `writeRtfPrefix` in class `RtfElement`
      Throws:
        `IOException` - for I/O problems

    - #### writeRtfSuffix

          protected void writeRtfSuffix()
                                 throws IOException

      Overridden to close paragraph
      Overrides:
        `writeRtfSuffix` in class `RtfElement`
      Throws:
        `IOException` - for I/O problems

    - #### newText

          public RtfText newText(String str)
                          throws IOException

      Close current text run if any and start a new one with default attributes
      Specified by:
        `newText` in interface `IRtfTextContainer`
      Parameters:
        `str` - if not null, added to the RtfText created
      Returns:
        the new RtfText object
      Throws:
        `IOException` - for I/O problems

    - #### newText

          public RtfText newText(String str,
                                 RtfAttributes attr)
                          throws IOException

      Close current text run if any and start a new one
      Specified by:
        `newText` in interface `IRtfTextContainer`
      Parameters:
        `str` - if not null, added to the RtfText created
        `attr` - attributes of the text
      Returns:
        the new RtfText object
      Throws:
        `IOException` - for I/O problems

    - #### newPageBreak

          public void newPageBreak()
                            throws IOException

      add a page break
      Specified by:
        `newPageBreak` in interface `IRtfPageBreakContainer`
      Throws:
        `IOException` - for I/O problems

    - #### newLineBreak

          public void newLineBreak()
                            throws IOException

      add a line break
      Specified by:
        `newLineBreak` in interface `IRtfTextContainer`
      Throws:
        `IOException` - for I/O problems

    - #### newPageNumber

          public RtfPageNumber newPageNumber()
                                      throws IOException

      Add a page number
      Specified by:
        `newPageNumber` in interface `IRtfPageNumberContainer`
      Returns:
        new RtfPageNumber object
      Throws:
        `IOException` - for I/O problems

    - #### newPageNumberCitation

          public RtfPageNumberCitation newPageNumberCitation(String id)
                                                      throws IOException

      Added by Boris POUDEROUS on 2002/07/09
      Specified by:
        `newPageNumberCitation` in interface `IRtfPageNumberCitationContainer`
      Parameters:
        `id` - string containing the citation text
      Returns:
        the new RtfPageNumberCitation object
      Throws:
        `IOException` - for I/O problems

    - #### newHyperLink

          public RtfHyperLink newHyperLink(String str,
                                           RtfAttributes attr)
                                    throws IOException

      Creates a new hyperlink.
      Specified by:
        `newHyperLink` in interface `IRtfHyperLinkContainer`
      Parameters:
        `str` - string containing the hyperlink text
        `attr` - attributes of new hyperlink
      Returns:
        the new RtfHyperLink object
      Throws:
        `IOException` - for I/O problems

    - #### newImage

          public RtfExternalGraphic newImage()
                                      throws IOException

      Start a new external graphic after closing all other elements
      Specified by:
        `newImage` in interface `IRtfExternalGraphicContainer`
      Returns:
        the new RtfExternalGraphic
      Throws:
        `IOException` - for I/O problems

    - #### okToWriteRtf

          protected boolean okToWriteRtf()

      Depending on RtfOptions, do not emit any RTF for empty paragraphs
      Overrides:
        `okToWriteRtf` in class `RtfContainer`
      Returns:
        true if RTF should be written

    - #### getTextAttributes

          public RtfAttributes getTextAttributes()

      accessor for text attributes
      Returns:
        attributes of the text

Copyright © 2023 Apache Software Foundation. All rights reserved.