Class RtfField

  • All Implemented Interfaces:
    com.lowagie.text.Element, RtfBasicElement, com.lowagie.text.RtfElementInterface
    Direct Known Subclasses:
    RtfAnchor, RtfPageNumber, RtfTableOfContents, RtfTOCEntry, RtfTotalPageNumber

    public abstract class RtfField
    extends com.lowagie.text.Chunk
    implements RtfBasicElement
    The RtfField class is an abstract base class for all rtf field functionality. Subclasses only need to implement the two abstract methods writeFieldInstContent and writeFieldResultContent. All other field functionality is handled by the RtfField class.
    Version:
    $Id: RtfField.java 3580 2008-08-06 15:52:00Z howard_s $
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected RtfDocument document
      The RtfDocument this RtfField belongs to
      private static byte[] FIELD
      Constant for a rtf field
      private static byte[] FIELD_ALT
      Constant for an alt field
      private static byte[] FIELD_DIRTY
      Constant for a dirty field
      private static byte[] FIELD_EDIT
      Constant for a edited field
      private static byte[] FIELD_INSTRUCTIONS
      Constant for the field instructions
      private static byte[] FIELD_LOCKED
      Constant for a locked field
      private static byte[] FIELD_PRIVATE
      Constant for a private field
      private static byte[] FIELD_RESULT
      Constant for the field result
      private boolean fieldAlt
      Is it an alt field
      private boolean fieldDirty
      Is the field dirty
      private boolean fieldEdit
      Is the field edited
      private boolean fieldLocked
      Is the field locked
      private boolean fieldPrivate
      Is the field private
      private RtfFont font
      The RtfFont of this RtfField
      private boolean inHeader
      Whether this RtfElement is in a header
      private boolean inTable
      Whether this RtfField is in a table
      • Fields inherited from class com.lowagie.text.Chunk

        ACTION, attributes, BACKGROUND, CHAR_SPACING, COLOR, content, ENCODING, GENERICTAG, HSCALE, HYPHENATION, IMAGE, LOCALDESTINATION, LOCALGOTO, NEWLINE, NEWPAGE, NEXTPAGE, OBJECT_REPLACEMENT_CHARACTER, PDFANNOTATION, REMOTEGOTO, SEPARATOR, SKEW, SPLITCHARACTER, SUBSUPSCRIPT, TAB, TEXTRENDERMODE, UNDERLINE
      • Fields inherited from interface com.lowagie.text.Element

        ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, FOOTNOTE, HEADER, IMGRAW, IMGTEMPLATE, JBIG2, JPEG, JPEG2000, KEYWORDS, LIST, LISTITEM, MARKED, MODIFICATIONDATE, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE, YMARK
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected RtfField​(RtfDocument doc)
      Constructs a RtfField for a RtfDocument.
      protected RtfField​(RtfDocument doc, com.lowagie.text.Font font)
      Constructs a RtfField for a RtfDocument.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      boolean isEmpty()
      An RtfField is never empty.
      boolean isFieldAlt()
      Get whether this field is an alt field
      boolean isFieldDirty()
      Get whether this field is dirty
      boolean isFieldEdit()
      Get whether this field is edited
      boolean isFieldLocked()
      Get whether this field is locked
      boolean isFieldPrivate()
      Get whether this field is private
      boolean isInHeader()
      Gets whether this RtfField is in a header.
      boolean isInTable()
      Gets whether this RtfField is in a table.
      void setFieldAlt​(boolean fieldAlt)
      Set whether this field is an alt field
      void setFieldDirty​(boolean fieldDirty)
      Set whether this field is dirty
      void setFieldEdit​(boolean fieldEdit)
      Set whether this field is edited.
      void setFieldLocked​(boolean fieldLocked)
      Set whether this field is locked
      void setFieldPrivate​(boolean fieldPrivate)
      Set whether this field is private
      void setFont​(com.lowagie.text.Font font)
      Override setFont to perform the correct font handling.
      void setInHeader​(boolean inHeader)
      Sets whether this RtfField is in a header
      void setInTable​(boolean inTable)
      Sets whether this RtfField is in a table
      void setRtfDocument​(RtfDocument doc)
      Sets the RtfDocument this RtfElement belongs to
      void writeContent​(java.io.OutputStream result)
      Writes the field to the OutputStream.
      private void writeFieldBegin​(java.io.OutputStream result)
      Writes the field beginning.
      private void writeFieldEnd​(java.io.OutputStream result)
      Writes the end of the field
      private void writeFieldInstBegin​(java.io.OutputStream result)
      Writes the beginning of the field instruction area.
      protected abstract void writeFieldInstContent​(java.io.OutputStream result)
      Writes the content of the field instruction area.
      private void writeFieldInstEnd​(java.io.OutputStream result)
      Writes the end of the field instruction area.
      private void writeFieldResultBegin​(java.io.OutputStream result)
      Writes the beginning of the field result area
      protected abstract void writeFieldResultContent​(java.io.OutputStream result)
      Writes the content of the pre-calculated field result.
      private void writeFieldResultEnd​(java.io.OutputStream result)
      Writes the end of the field result area
      • Methods inherited from class com.lowagie.text.Chunk

        append, getCharacterSpacing, getChunkAttributes, getChunks, getContent, getFont, getHorizontalScaling, getHyphenation, getImage, getTextRise, getWidthPoint, hasAttributes, isContent, isNestable, process, setAction, setAnchor, setAnchor, setAnnotation, setBackground, setBackground, setCharacterSpacing, setChunkAttributes, setGenericTag, setHorizontalScaling, setHyphenation, setLocalDestination, setLocalGoto, setNewPage, setRemoteGoto, setRemoteGoto, setSkew, setSplitCharacter, setTextRenderMode, setTextRise, setUnderline, setUnderline, toString, type
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • FIELD

        private static final byte[] FIELD
        Constant for a rtf field
      • FIELD_DIRTY

        private static final byte[] FIELD_DIRTY
        Constant for a dirty field
      • FIELD_PRIVATE

        private static final byte[] FIELD_PRIVATE
        Constant for a private field
      • FIELD_LOCKED

        private static final byte[] FIELD_LOCKED
        Constant for a locked field
      • FIELD_EDIT

        private static final byte[] FIELD_EDIT
        Constant for a edited field
      • FIELD_ALT

        private static final byte[] FIELD_ALT
        Constant for an alt field
      • FIELD_INSTRUCTIONS

        private static final byte[] FIELD_INSTRUCTIONS
        Constant for the field instructions
      • FIELD_RESULT

        private static final byte[] FIELD_RESULT
        Constant for the field result
      • fieldDirty

        private boolean fieldDirty
        Is the field dirty
      • fieldEdit

        private boolean fieldEdit
        Is the field edited
      • fieldLocked

        private boolean fieldLocked
        Is the field locked
      • fieldPrivate

        private boolean fieldPrivate
        Is the field private
      • fieldAlt

        private boolean fieldAlt
        Is it an alt field
      • inTable

        private boolean inTable
        Whether this RtfField is in a table
      • inHeader

        private boolean inHeader
        Whether this RtfElement is in a header
      • document

        protected RtfDocument document
        The RtfDocument this RtfField belongs to
      • font

        private RtfFont font
        The RtfFont of this RtfField
    • Constructor Detail

      • RtfField

        protected RtfField​(RtfDocument doc)
        Constructs a RtfField for a RtfDocument. This is not very useful, since the RtfField by itself does not do anything. Use one of the subclasses instead.
        Parameters:
        doc - The RtfDocument this RtfField belongs to.
      • RtfField

        protected RtfField​(RtfDocument doc,
                           com.lowagie.text.Font font)
        Constructs a RtfField for a RtfDocument. This is not very useful, since the RtfField by itself does not do anything. Use one of the subclasses instead.
        Parameters:
        doc - The RtfDocument this RtfField belongs to.
        font - The Font this RtfField should use
    • Method Detail

      • setRtfDocument

        public void setRtfDocument​(RtfDocument doc)
        Sets the RtfDocument this RtfElement belongs to
        Specified by:
        setRtfDocument in interface RtfBasicElement
        Parameters:
        doc - The RtfDocument to use
      • writeFieldBegin

        private void writeFieldBegin​(java.io.OutputStream result)
                              throws java.io.IOException
        Writes the field beginning. Also writes field properties.
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException
      • writeFieldInstBegin

        private void writeFieldInstBegin​(java.io.OutputStream result)
                                  throws java.io.IOException
        Writes the beginning of the field instruction area.
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException
      • writeFieldInstContent

        protected abstract void writeFieldInstContent​(java.io.OutputStream result)
                                               throws java.io.IOException
        Writes the content of the field instruction area. Override this method in your subclasses.
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException
      • writeFieldInstEnd

        private void writeFieldInstEnd​(java.io.OutputStream result)
                                throws java.io.IOException
        Writes the end of the field instruction area.
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException
      • writeFieldResultBegin

        private void writeFieldResultBegin​(java.io.OutputStream result)
                                    throws java.io.IOException
        Writes the beginning of the field result area
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException
      • writeFieldResultContent

        protected abstract void writeFieldResultContent​(java.io.OutputStream result)
                                                 throws java.io.IOException
        Writes the content of the pre-calculated field result. Override this method in your subclasses.
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException - on i/o errors.
      • writeFieldResultEnd

        private void writeFieldResultEnd​(java.io.OutputStream result)
                                  throws java.io.IOException
        Writes the end of the field result area
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException - on i/o errors.
      • writeFieldEnd

        private void writeFieldEnd​(java.io.OutputStream result)
                            throws java.io.IOException
        Writes the end of the field
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException - on i/o errors.
      • writeContent

        public void writeContent​(java.io.OutputStream result)
                          throws java.io.IOException
        Writes the field to the OutputStream.
        Specified by:
        writeContent in interface RtfBasicElement
        Parameters:
        result - The OutputStream to write to.
        Throws:
        java.io.IOException - on i/o errors.
      • isFieldAlt

        public boolean isFieldAlt()
        Get whether this field is an alt field
        Returns:
        Returns whether this field is an alt field
      • setFieldAlt

        public void setFieldAlt​(boolean fieldAlt)
        Set whether this field is an alt field
        Parameters:
        fieldAlt - The value to use
      • isFieldDirty

        public boolean isFieldDirty()
        Get whether this field is dirty
        Returns:
        Returns whether this field is dirty
      • setFieldDirty

        public void setFieldDirty​(boolean fieldDirty)
        Set whether this field is dirty
        Parameters:
        fieldDirty - The value to use
      • isFieldEdit

        public boolean isFieldEdit()
        Get whether this field is edited
        Returns:
        Returns whether this field is edited
      • setFieldEdit

        public void setFieldEdit​(boolean fieldEdit)
        Set whether this field is edited.
        Parameters:
        fieldEdit - The value to use
      • isFieldLocked

        public boolean isFieldLocked()
        Get whether this field is locked
        Returns:
        Returns the fieldLocked.
      • setFieldLocked

        public void setFieldLocked​(boolean fieldLocked)
        Set whether this field is locked
        Parameters:
        fieldLocked - The value to use
      • isFieldPrivate

        public boolean isFieldPrivate()
        Get whether this field is private
        Returns:
        Returns the fieldPrivate.
      • setFieldPrivate

        public void setFieldPrivate​(boolean fieldPrivate)
        Set whether this field is private
        Parameters:
        fieldPrivate - The value to use
      • setInTable

        public void setInTable​(boolean inTable)
        Sets whether this RtfField is in a table
        Specified by:
        setInTable in interface RtfBasicElement
        Parameters:
        inTable - True if this RtfField is in a table, false otherwise
      • isInTable

        public boolean isInTable()
        Gets whether this RtfField is in a table.
        Returns:
        True if this RtfField is in a table, false otherwise
        Since:
        2.1.0
      • setInHeader

        public void setInHeader​(boolean inHeader)
        Sets whether this RtfField is in a header
        Specified by:
        setInHeader in interface RtfBasicElement
        Parameters:
        inHeader - True if this RtfField is in a header, false otherwise
      • isInHeader

        public boolean isInHeader()
        Gets whether this RtfField is in a header.
        Returns:
        True if this RtfField is in a header, false otherwise
        Since:
        2.1.0
      • isEmpty

        public boolean isEmpty()
        An RtfField is never empty.
        Overrides:
        isEmpty in class com.lowagie.text.Chunk
      • setFont

        public void setFont​(com.lowagie.text.Font font)
        Override setFont to perform the correct font handling.
        Overrides:
        setFont in class com.lowagie.text.Chunk