DocxParagraph class
A paragraph containing styled text and inline elements.
DocxParagraph is the primary block-level element for text content. It can contain multiple DocxText runs with different formatting.
Basic Usage
DocxParagraph(children: [
DocxText('Hello, '),
DocxText.bold('World'),
DocxText('!'),
])
Heading Shortcut
DocxParagraph.heading1('Chapter 1: Introduction')
DocxParagraph.heading2('Section 1.1')
Simple Text Shortcut
DocxParagraph.text('A simple paragraph with just text.')
Fluent API
DocxParagraph()
.add(DocxText('Hello'))
.add(DocxText.bold(' World'))
.align(DocxAlign.center)
Constructors
-
DocxParagraph({List<
DocxInline> children = const [], DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment, String? styleId, int? spacingAfter, int? spacingBefore, int? lineSpacing, String? lineRule, int? indentLeft, int? indentRight, int? indentFirstLine, DocxBorderSide? borderTop, DocxBorderSide? borderBottomSide, DocxBorderSide? borderLeft, DocxBorderSide? borderRight, DocxBorderSide? borderBetween, int? paddingTop, int? paddingBottom, int? paddingLeft, int? paddingRight, int? borderRadius, String? shadingFill, String? themeFill, String? themeFillTint, String? themeFillShade, int? outlineLevel, bool pageBreakBefore = false, int? numId, int? ilvl, String? cnfStyle, String? id}) -
Creates a paragraph with specified children and formatting.
const
- DocxParagraph.code(String code, {DocxTextAlignment? textAlignment})
-
Creates a code block paragraph.
factory
- DocxParagraph.heading(DocxHeadingLevel level, String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates a heading paragraph.
factory
- DocxParagraph.heading1(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates an H1 heading.
factory
- DocxParagraph.heading2(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates an H2 heading.
factory
- DocxParagraph.heading3(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates an H3 heading.
factory
- DocxParagraph.heading4(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates an H4 heading.
factory
- DocxParagraph.heading5(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates an H5 heading.
factory
- DocxParagraph.heading6(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment})
-
Creates an H6 heading.
factory
- DocxParagraph.quote(String text, {DocxTextAlignment? textAlignment})
-
Creates a blockquote paragraph.
factory
- DocxParagraph.text(String text, {DocxAlign align = DocxAlign.left, DocxTextAlignment? textAlignment, double? fontSize, String? fontFamily, DocxBorderSide? borderBottom})
-
Creates a simple paragraph with plain text.
factory
Properties
- align → DocxAlign
-
Alignment for the paragraph (left, center, right, justify)
final
- borderBetween → DocxBorderSide?
-
final
- borderBottomSide → DocxBorderSide?
-
final
- borderLeft → DocxBorderSide?
-
final
- borderRadius → int?
-
Border radius (Note: Not natively supported by standard Word paragraphs).
final
- borderRight → DocxBorderSide?
-
final
- borderTop → DocxBorderSide?
-
Detailed border overrides.
final
-
children
→ List<
DocxInline> -
Child elements (typically DocxText runs).
final
- cnfStyle → String?
-
Conditional formatting style flags for table paragraphs.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- id → String?
-
Unique identifier for this node (for debugging/tracking).
finalinherited
- ilvl → int?
-
Indentation level for list items (0-based).
final
- indentFirstLine → int?
-
First line indentation in twips (can be negative for hanging indent).
final
- indentLeft → int?
-
Left indentation in twips.
final
- indentRight → int?
-
Right indentation in twips.
final
- lineRule → String?
-
Line spacing rule ('auto', 'exact', 'atLeast').
final
- lineSpacing → int?
-
Line spacing in twips (240 = single, 360 = 1.5, 480 = double).
final
- numId → int?
-
Numbering ID for list items.
final
- outlineLevel → int?
-
Outline level for TOC (0-8, null for body text).
final
- paddingBottom → int?
-
final
- paddingLeft → int?
-
final
- paddingRight → int?
-
final
- paddingTop → int?
-
Padding in twips (1/20th of a point).
final
- pageBreakBefore → bool
-
Whether to insert a page break before this paragraph.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- shadingFill → String?
-
Background shading color hex.
final
- spacingAfter → int?
-
Spacing after paragraph in twips.
final
- spacingBefore → int?
-
Spacing before paragraph in twips.
final
- styleId → String?
-
Style ID (e.g., 'Normal', 'Heading1').
final
- textAlignment → DocxTextAlignment?
-
Vertical text alignment within the paragraph line (e.g. relative to an inline image).
final
- themeFill → String?
-
Theme fill color reference.
final
- themeFillShade → String?
-
Theme fill shade.
final
- themeFillTint → String?
-
Theme fill tint.
final
Methods
-
accept(
DocxVisitor visitor) → void -
Accepts a visitor for traversing the AST.
override
-
add(
DocxInline child) → DocxParagraph - Returns a copy with the specified child added.
-
aligned(
DocxAlign newAlign) → DocxParagraph - Returns a copy with the specified alignment.
-
buildXml(
XmlBuilder builder) → void -
Converts this node to its XML representation.
override
-
copyWith(
{List< DocxInline> ? children, DocxAlign? align, DocxTextAlignment? textAlignment, String? styleId, int? spacingAfter, int? spacingBefore, int? lineSpacing, String? lineRule, int? indentLeft, int? indentRight, int? indentFirstLine, DocxBorder? borderBottom, DocxBorderSide? borderTop, DocxBorderSide? borderBottomSide, DocxBorderSide? borderLeft, DocxBorderSide? borderRight, DocxBorderSide? borderBetween, int? paddingTop, int? paddingBottom, int? paddingLeft, int? paddingRight, String? shadingFill, String? themeFill, String? themeFillTint, String? themeFillShade, int? outlineLevel, bool? pageBreakBefore, int? numId, int? ilvl, String? cnfStyle}) → DocxParagraph - Returns a copy with specified modifications.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
styled(
String newStyleId) → DocxParagraph - Returns a copy with the specified style.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited