CompositeNode

CompositeNode — Aspose.Note FOSS for Python API Reference

Klase: CompositeNode

ImageRenderOptions: aspose.note ImageRenderOptions: from aspose.note import CompositeNode ImageRenderOptions: Node

CompositeNode paplašina Node ar iespēju saturēt bērna mezglus. Visi strukturālie mezglu tipi dokumenta modelī (Document, Page, Outline, OutlineElement, RichText, Image, Table, TableRow, TableCell, AttachedFile) manto no CompositeNode. Jūs nekad neinstancējat CompositeNode tieši.


ImageRenderOptions

Manto no Node

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
ParentNode`NodeNone`ImageRenderOptions
Document`DocumentNone`ImageRenderOptions

Bērna piekļuves īpašības

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
FirstChild`NodeNone`ImageRenderOptions
LastChild`NodeNone`ImageRenderOptions

ImageRenderOptions

AppendChildLast(node)

composite.AppendChildLast(node: Node) -> Node

ImageRenderOptions node kā pēdējais tiešais bērns. Iestata node.ParentNode = self. Atgriež node.


AppendChildFirst(node)

composite.AppendChildFirst(node: Node) -> Node

ImageRenderOptions node kā pirmais tiešais bērns. Atgriež node.


InsertChild(index, node)

composite.InsertChild(index: int, node: Node) -> Node

ImageRenderOptions node pozīcijā index bērnu sarakstā. Atgriež node.


RemoveChild(node)

composite.RemoveChild(node: Node) -> None

ImageRenderOptions node no bērnu saraksta un iestata node.ParentNode = None.


GetChildNodes(node_type)

composite.GetChildNodes(node_type: type) -> list

Rekursīvi meklē visu apakškoku (dziļuma pirmā, ieskaitot self) node_type. Tas ir galvenais veids, kā savākt visas dotās klases instances jebkurā apakškokā.


ImageRenderOptions

for child in composite:
    ...

Iterējot CompositeNode atgriež tās tikai tiešos bērnus. Izmantojiet GetChildNodes() dziļai meklēšanai.


Lietojuma piemērs

Pārlūko tiešos bērnus pret dziļu meklēšanu

from aspose.note import Document, Page, Outline, RichText

doc = Document("MyNotes.one")
first_page = doc.GetChildNodes(Page)[0]

# Direct children of a page (Outline nodes)
print("Direct children of first page:")
for child in first_page:
    print(f"  {child.NodeType}")

# Deep search — all RichText nodes anywhere under first_page
all_rt = first_page.GetChildNodes(RichText)
print(f"\nAll RichText nodes in first page: {len(all_rt)}")

Izveidojiet dokumentu programmatiski

from aspose.note import Document, Page, Outline, OutlineElement, RichText, SaveFormat, PdfSaveOptions

doc = Document()
page = Page()
outline = Outline()
oe = OutlineElement()
rt = RichText()
rt.Append("Hello, OneNote!")

oe.AppendChildLast(rt)
outline.AppendChildLast(oe)
page.AppendChildLast(outline)
doc.AppendChildLast(page)

doc.Save("output.pdf", PdfSaveOptions(SaveFormat.Pdf))

None drošība

FirstChild un LastChild ir None kad mezglam nav bērnu. Vienmēr pārbaudiet pirms to dereferencēšanas.


Skatīt arī

 Latviešu