CompositeNode

CompositeNode — Aspose.Note FOSS for Python API Reference

Klasė: CompositeNode

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

CompositeNode plečia Node su galimybe turėti vaikų mazgus. Visi struktūriniai mazgo tipai dokumento modelyje (Document, Page, Outline, OutlineElement, RichText, Image, Table, TableRow, TableCell, AttachedFile) paveldi iš CompositeNode.Jūs niekada neinstancijuojate CompositeNode tiesiogiai.


ImageRenderOptions

Paveldėta iš Node

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
ParentNode`NodeNone`ImageRenderOptions
Document`DocumentNone`ImageRenderOptions

Vaikų prieigos savybės

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
FirstChild`NodeNone`ImageRenderOptions
LastChild`NodeNone`ImageRenderOptions

ImageRenderOptions

AppendChildLast(node)

composite.AppendChildLast(node: Node) -> Node

ImageRenderOptions node kaip paskutinis tiesioginis vaikas. Nustato node.ParentNode = self. Grąžina node.


AppendChildFirst(node)

composite.AppendChildFirst(node: Node) -> Node

ImageRenderOptions node kaip pirmas tiesioginis vaikas. Grąžina node.


InsertChild(index, node)

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

ImageRenderOptions node pozicijoje index vaiko sąraše. Grąžina node.


RemoveChild(node)

composite.RemoveChild(node: Node) -> None

ImageRenderOptions node iš vaikų sąrašo ir rinkinių node.ParentNode = None.


GetChildNodes(node_type)

composite.GetChildNodes(node_type: type) -> list

Rekursyviai ieško viso po medžio (giliojo pirmumo, įskaitant self) ir grąžina visus mazgus, atitinkančius node_type. Tai yra pagrindinis būdas surinkti visus duotos klasės egzempliorius bet kuriame po medyje.


ImageRenderOptions

for child in composite:
    ...

Iteruojant CompositeNode grąžina jo tik tiesioginius vaikus. Naudokite GetChildNodes() giliai paieškai.


Naudojimo pavyzdys

Eiti per tiesioginius vaikus vs giluminė paieška

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)}")

Sukurti dokumentą programiškai

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-saugumas

FirstChild ir LastChild yra None kai mazgas neturi vaikų. Visada patikrinkite prieš dereferencijuodami juos.


Žr. taip pat

 Lietuvių