StructuredDocumentTagRangeStart constructor
StructuredDocumentTagRangeStart(doc, type)
Initializes a new instance of the Structured document tag range start class.
def __init__(self, doc: aspose.words.DocumentBase, type: aspose.words.markup.SdtType):
...
Parameter | Type | Description |
---|---|---|
doc | DocumentBase | The owner document. |
type | SdtType | Type of SDT node. |
Remarks
The following types of SDT can be created:
Examples
Shows how to create/remove structured document tag and its content.
def test_sdt_range_extended_methods(self):
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
builder.writeln("StructuredDocumentTag element")
range_start = self.insert_structured_document_tag_ranges(doc)
# Removes ranged structured document tag, but keeps content inside.
range_start.remove_self_only()
range_start = doc.get_child(aw.NodeType.STRUCTURED_DOCUMENT_TAG_RANGE_START, 0, False)
self.assertIsNone(range_start)
range_end = doc.get_child(aw.NodeType.STRUCTURED_DOCUMENT_TAG_RANGE_END, 0, False)
self.assertIsNone(range_end)
self.assertEqual("StructuredDocumentTag element", doc.get_text().strip())
range_start = self.insert_structured_document_tag_ranges(doc)
paragraph_node = range_start.last_child
self.assertEqual("StructuredDocumentTag element", paragraph_node.get_text().strip())
# Removes ranged structured document tag and content inside.
range_start.remove_all_children()
self.assertEquals(0, range_start.get_child_nodes(aw.NodeType.ANY, False).count)
def insert_structured_document_tag_ranges(self, doc: aw.Document) -> aw.markup.StructuredDocumentTagRangeStart:
range_start = aw.markup.StructuredDocumentTagRangeStart(doc, aw.markup.SdtType.PLAIN_TEXT)
range_end = aw.markup.StructuredDocumentTagRangeEnd(doc, range_start.id)
doc.first_section.body.insert_before(range_start, doc.first_section.body.first_paragraph)
doc.last_section.body.insert_after(range_end, doc.first_section.body.first_paragraph)
return range_start
See Also
- module aspose.words.markup
- class StructuredDocumentTagRangeStart