Class HSLFTextParagraph

    • Method Detail

      • addTextRun

        public void addTextRun​(HSLFTextRun run)
      • setParagraphStyle

        public void setParagraphStyle​(TextPropCollection paragraphStyle)
      • supplySheet

        public static void supplySheet​(java.util.List<HSLFTextParagraph> paragraphs,
                                       HSLFSheet sheet)
        Supply the Sheet we belong to, which might have an assigned SlideShow Also passes it on to our child RichTextRuns
      • getRunType

        public int getRunType()
        Returns the type of the text, from the TextHeaderAtom. Possible values can be seen from TextHeaderAtom
        See Also:
        TextHeaderAtom
      • setRunType

        public void setRunType​(int runType)
      • isDrawingBased

        public boolean isDrawingBased()
        Is this Text Run one from a PPDrawing, or is it one from the SlideListWithText?
      • getRecords

        public Record[] getRecords()
        Returns records that make up the list of text paragraphs (there can be misc InteractiveInfo, TxInteractiveInfo and other records)
        Returns:
        text run records
      • setStyleTextProp9Atom

        public void setStyleTextProp9Atom​(StyleTextProp9Atom styleTextProp9Atom)
        Numbered List info
      • getStyleTextProp9Atom

        public StyleTextProp9Atom getStyleTextProp9Atom()
        Numbered List info
      • iterator

        public java.util.Iterator<HSLFTextRun> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<HSLFTextRun>
      • setLeftMargin

        public void setLeftMargin​(java.lang.Double leftMargin)
        Description copied from interface: TextParagraph
        Specifies the left margin of the paragraph. This is specified in addition to the text body inset and applies only to this text paragraph. That is the text body Inset and the LeftMargin attributes are additive with respect to the text position.
        Specified by:
        setLeftMargin in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Parameters:
        leftMargin - the left margin (in points) or null to unset
      • getRightMargin

        public java.lang.Double getRightMargin()
        Description copied from interface: TextParagraph
        Specifies the right margin of the paragraph. This is specified in addition to the text body inset and applies only to this text paragraph. That is the text body Inset and the RightMargin attributes are additive with respect to the text position. The right margin is not support and therefore ignored by the HSLF implementation.
        Specified by:
        getRightMargin in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Returns:
        the right margin (in points) of the paragraph or null, if unset
      • setIndent

        public void setIndent​(java.lang.Double indent)
        Description copied from interface: TextParagraph
        Specifies the indent size that will be applied to the first line of text in the paragraph.
        Specified by:
        setIndent in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Parameters:
        indent - the indent (in points) applied to the first line of text in the paragraph
      • getAutoNumberingStartAt

        public java.lang.Integer getAutoNumberingStartAt()
      • setBulletStyle

        public void setBulletStyle​(java.lang.Object... styles)
        Description copied from interface: TextParagraph
        Sets the bullet styles. If no styles are given, the bullets are omitted. Possible attributes are integer/double (bullet size), Color (bullet color), character (bullet character), string (bullet font), AutoNumberingScheme
        Specified by:
        setBulletStyle in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
      • setParentShape

        public void setParentShape​(HSLFTextShape parentShape)
      • setIndentLevel

        public void setIndentLevel​(int level)
        Description copied from interface: TextParagraph
        Specifies the particular level text properties that this paragraph will follow. The value for this attribute formats the text according to the corresponding level paragraph properties defined in the SlideMaster.
        Specified by:
        setIndentLevel in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Parameters:
        level - the level (0 ... 4)
      • setBullet

        public void setBullet​(boolean flag)
        Sets whether this rich text run has bullets
      • isBullet

        public boolean isBullet()
        Returns whether this rich text run has bullets
      • setBulletChar

        public void setBulletChar​(java.lang.Character c)
        Sets the bullet character
      • getBulletChar

        public java.lang.Character getBulletChar()
        Returns the bullet character
      • setBulletSize

        public void setBulletSize​(java.lang.Double size)
        Sets the bullet size
      • getBulletSize

        public java.lang.Double getBulletSize()
        Returns the bullet size, null if unset
      • setBulletColor

        public void setBulletColor​(java.awt.Color color)
        Sets the bullet color
      • getBulletColor

        public java.awt.Color getBulletColor()
        Returns the bullet color
      • setBulletFont

        public void setBulletFont​(java.lang.String typeface)
        Sets the bullet font
      • getBulletFont

        public java.lang.String getBulletFont()
        Returns the bullet font
      • setLineSpacing

        public void setLineSpacing​(java.lang.Double lineSpacing)
        Description copied from interface: TextParagraph
        This element specifies the vertical line spacing that is to be used within a paragraph. This may be specified in two different ways, percentage spacing and font point spacing:

        If linespacing >= 0, then linespacing is a percentage of normal line height If linespacing < 0, the absolute value of linespacing is the spacing in points

        Examples:
        
              // spacing will be 120% of the size of the largest text on each line
              paragraph.setLineSpacing(120);
        
              // spacing will be 200% of the size of the largest text on each line
              paragraph.setLineSpacing(200);
        
              // spacing will be 48 points
              paragraph.setLineSpacing(-48.0);
         
        Specified by:
        setLineSpacing in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Parameters:
        lineSpacing - the vertical line spacing
      • getLineSpacing

        public java.lang.Double getLineSpacing()
        Description copied from interface: TextParagraph
        Returns the vertical line spacing that is to be used within a paragraph. This may be specified in two different ways, percentage spacing and font point spacing:

        If linespacing >= 0, then linespacing is a percentage of normal line height. If linespacing < 0, the absolute value of linespacing is the spacing in points

        Specified by:
        getLineSpacing in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Returns:
        the vertical line spacing or null, if unset
      • setSpaceBefore

        public void setSpaceBefore​(java.lang.Double spaceBefore)
        Description copied from interface: TextParagraph
        Set the amount of vertical white space that will be present before the paragraph. This space is specified in either percentage or points:

        If spaceBefore >= 0, then space is a percentage of normal line height. If spaceBefore < 0, the absolute value of linespacing is the spacing in points

        Examples:
        
              // The paragraph will be formatted to have a spacing before the paragraph text.
              // The spacing will be 200% of the size of the largest text on each line
              paragraph.setSpaceBefore(200);
        
              // The spacing will be a size of 48 points
              paragraph.setSpaceBefore(-48.0);
         
        Specified by:
        setSpaceBefore in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Parameters:
        spaceBefore - the vertical white space before the paragraph, null to unset
      • getSpaceBefore

        public java.lang.Double getSpaceBefore()
        Description copied from interface: TextParagraph
        The amount of vertical white space before the paragraph This may be specified in two different ways, percentage spacing and font point spacing:

        If spaceBefore >= 0, then space is a percentage of normal line height. If spaceBefore < 0, the absolute value in points

        Specified by:
        getSpaceBefore in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Returns:
        the vertical white space before the paragraph, or null if unset
      • setSpaceAfter

        public void setSpaceAfter​(java.lang.Double spaceAfter)
        Description copied from interface: TextParagraph
        Set the amount of vertical white space that will be present after the paragraph. This space is specified in either percentage or points:

        If spaceAfter >= 0, then space is a percentage of normal line height. If spaceAfter < 0, the absolute value of linespacing is the spacing in points

        Examples:
        
              // The paragraph will be formatted to have a spacing after the paragraph text.
              // The spacing will be 200% of the size of the largest text on each line
              paragraph.setSpaceAfter(200);
        
              // The spacing will be a size of 48 points
              paragraph.setSpaceAfter(-48.0);
         
        Specified by:
        setSpaceAfter in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Parameters:
        spaceAfter - the vertical white space after the paragraph, null to unset
      • getSpaceAfter

        public java.lang.Double getSpaceAfter()
        Description copied from interface: TextParagraph
        The amount of vertical white space after the paragraph This may be specified in two different ways, percentage spacing and font point spacing:

        If spaceBefore >= 0, then space is a percentage of normal line height. If spaceBefore < 0, the absolute value of linespacing is the spacing in points

        Specified by:
        getSpaceAfter in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Returns:
        the vertical white space after the paragraph or null, if unset
      • getTabStops

        public java.util.List<? extends TabStop> getTabStops()
        Description copied from interface: TextParagraph
        Get the TabStops - the list can't be and it's entries shouldn't be modified. Opposed to other properties, this method is not cascading to the master sheet, if the property is not defined on the normal slide level, i.e. the tabstops on different levels aren't merged.
        Specified by:
        getTabStops in interface TextParagraph<HSLFShape,​HSLFTextParagraph,​HSLFTextRun>
        Returns:
        the tabstop collection or null if no tabstops are defined
      • setText

        public static HSLFTextRun setText​(java.util.List<HSLFTextParagraph> paragraphs,
                                          java.lang.String text)
        Sets (overwrites) the current text. Uses the properties of the first paragraph / textrun
        Parameters:
        text - the text string used by this object.
      • getText

        public static java.lang.String getText​(java.util.List<HSLFTextParagraph> paragraphs)
      • getRawText

        public static java.lang.String getRawText​(java.util.List<HSLFTextParagraph> paragraphs)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • toExternalString

        public static java.lang.String toExternalString​(java.lang.String rawText,
                                                        int runType)
        Converts raw text from the text paragraphs to a formatted string, i.e. it converts certain control characters used in the raw txt
        Parameters:
        rawText - the raw text
        runType - the run type of the shape, paragraph or headerAtom. use -1 if unknown
        Returns:
        the formatted string
      • findTextParagraphs

        public static java.util.List<java.util.List<HSLFTextParagraph>> findTextParagraphs​(PPDrawing ppdrawing,
                                                                                           HSLFSheet sheet)
        For a given PPDrawing, grab all the TextRuns
      • setParagraphTextPropVal

        public void setParagraphTextPropVal​(java.lang.String propName,
                                            java.lang.Integer val)
        Sets the value of the given Paragraph TextProp, add if required
        Parameters:
        propName - The name of the Paragraph TextProp
        val - The value to set for the TextProp
      • setDirty

        public void setDirty()
        marks this paragraph dirty, so its records will be renewed on save
      • isDirty

        public boolean isDirty()