Story class

Story class

Base class for elements that contain block-level nodes Paragraph and Table. To learn more, visit the Logical Levels of Nodes in a Document documentation article.

Text of a Word document is said to consist of several stories. The main text is stored in the main text story represented by Body, each header and footer is stored in a separate story represented by HeaderFooter.

Inheritance: StoryCompositeNodeNode

Properties

Name Description
child_nodes Gets all immediate child nodes of this node.
(Inherited from CompositeNode)
count Gets the number of immediate children of this node.
(Inherited from CompositeNode)
custom_node_id Specifies custom node identifier.
(Inherited from Node)
document Gets the document to which this node belongs.
(Inherited from Node)
first_child Gets the first child of the node.
(Inherited from CompositeNode)
first_paragraph Gets the first paragraph in the story.
has_child_nodes Returns True if this node has any child nodes.
(Inherited from CompositeNode)
is_composite Returns True if this node can contain other nodes.
(Inherited from Node)
last_child Gets the last child of the node.
(Inherited from CompositeNode)
last_paragraph Gets the last paragraph in the story.
next_sibling Gets the node immediately following this node.
(Inherited from Node)
node_type Gets the type of this node.
(Inherited from Node)
paragraphs Gets a collection of paragraphs that are immediate children of the story.
parent_node Gets the immediate parent of this node.
(Inherited from Node)
previous_sibling Gets the node immediately preceding this node.
(Inherited from Node)
range Returns a Range object that represents the portion of a document that is contained in this node.
(Inherited from Node)
story_type Gets the type of this story.
tables Gets a collection of tables that are immediate children of the story.

Methods

Name Description
accept(visitor) Accepts a visitor.
(Inherited from Node)
append_child(new_child) Adds the specified node to the end of the list of child nodes for this node.
(Inherited from CompositeNode)
append_paragraph(text) A shortcut method that creates a Paragraph object with optional text and appends it to the end of this object.
clone(is_clone_children) Creates a duplicate of the node.
(Inherited from Node)
delete_shapes() Deletes all shapes from the text of this story.
get_ancestor(ancestor_type) Gets the first ancestor of the specified object type.
(Inherited from Node)
get_ancestor(ancestor_type) Gets the first ancestor of the specified NodeType.
(Inherited from Node)
get_child(node_type, index, is_deep) Returns an Nth child node that matches the specified type.
(Inherited from CompositeNode)
get_child_nodes(node_type, is_deep) Returns a live collection of child nodes that match the specified type.
(Inherited from CompositeNode)
get_text() Gets the text of this node and of all its children.
(Inherited from Node)
index_of(child) Returns the index of the specified child node in the child node array.
(Inherited from CompositeNode)
insert_after(new_child, ref_child) Inserts the specified node immediately after the specified reference node.
(Inherited from CompositeNode)
insert_before(new_child, ref_child) Inserts the specified node immediately before the specified reference node.
(Inherited from CompositeNode)
next_pre_order(root_node) Gets next node according to the pre-order tree traversal algorithm.
(Inherited from Node)
node_type_to_string(node_type) A utility method that converts a node type enum value into a user friendly string.
(Inherited from Node)
prepend_child(new_child) Adds the specified node to the beginning of the list of child nodes for this node.
(Inherited from CompositeNode)
previous_pre_order(root_node) Gets the previous node according to the pre-order tree traversal algorithm.
(Inherited from Node)
remove() Removes itself from the parent.
(Inherited from Node)
remove_all_children() Removes all the child nodes of the current node.
(Inherited from CompositeNode)
remove_child(old_child) Removes the specified child node.
(Inherited from CompositeNode)
remove_smart_tags() Removes all SmartTag descendant nodes of the current node.
(Inherited from CompositeNode)
select_nodes(xpath) Selects a list of nodes matching the XPath expression.
(Inherited from CompositeNode)
select_single_node(xpath) Selects the first Node that matches the XPath expression.
(Inherited from CompositeNode)
to_string(save_format) Exports the content of the node into a string in the specified format.
(Inherited from Node)
to_string(save_options) Exports the content of the node into a string using the specified save options.
(Inherited from Node)

Examples

Shows how to remove all shapes from a node.

doc = aw.Document()
builder = aw.DocumentBuilder(doc)

# Use a DocumentBuilder to insert a shape. This is an inline shape,
# which has a parent Paragraph, which is a child node of the first section's Body.
builder.insert_shape(aw.drawing.ShapeType.CUBE, 100.0, 100.0)

self.assertEqual(1, doc.get_child_nodes(aw.NodeType.SHAPE, True).count)

# We can delete all shapes from the child paragraphs of this Body.
self.assertEqual(aw.StoryType.MAIN_TEXT, doc.first_section.body.story_type)
doc.first_section.body.delete_shapes()

self.assertEqual(0, doc.get_child_nodes(aw.NodeType.SHAPE, True).count)

See Also