CompositeNode — Aspose.Note FOSS for Python API Reference
クラス: CompositeNode
ImageRenderOptions: aspose.note ImageRenderOptions: from aspose.note import CompositeNode ImageRenderOptions: Node
CompositeNode 拡張します Node 子ノードを所有できる機能を追加します。ドキュメントモデル内のすべての構造ノードタイプは(Document, Page, Outline, OutlineElement, RichText, Image, Table, TableRow, TableCell, AttachedFile) 継承します CompositeNode. あなたは決してインスタンス化しません CompositeNode 直接に.
ImageRenderOptions
Node から継承
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|---|
ParentNode | `Node | None` | ImageRenderOptions |
Document | `Document | None` | ImageRenderOptions |
子アクセスプロパティ
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|---|
FirstChild | `Node | None` | ImageRenderOptions |
LastChild | `Node | None` | ImageRenderOptions |
ImageRenderOptions
AppendChildLast(node)
composite.AppendChildLast(node: Node) -> NodeImageRenderOptions node 最後の直接子として設定します。Sets node.ParentNode = self. 戻り値 node.
AppendChildFirst(node)
composite.AppendChildFirst(node: Node) -> NodeImageRenderOptions node 最初の直接子として設定します。 戻り値 node.
InsertChild(index, node)
composite.InsertChild(index: int, node: Node) -> NodeImageRenderOptions node 位置 index 子リスト内で。 戻り値 node.
RemoveChild(node)
composite.RemoveChild(node: Node) -> NoneImageRenderOptions node 子リストから取得し、設定します node.ParentNode = None.
GetChildNodes(node_type)
composite.GetChildNodes(node_type: type) -> listサブツリー全体を再帰的に検索します(深さ優先、含む self) そして一致するすべてのノードを返します node_type. これは、任意のサブツリー内で特定のクラスのすべてのインスタンスを収集する主要な方法です。.
ImageRenderOptions
for child in composite:
...a を反復処理する CompositeNode その結果を生成する 直接の子要素のみ. 使用 GetChildNodes() 深い検索のために。.
使用例
直接子の走査と深い検索の比較
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)}")プログラムでドキュメントを構築する
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 安全性
FirstChild および LastChild です None ノードに子がない場合。参照解除する前に必ずガードしてください。.
関連項目
- ImageRenderOptions: すべてのドキュメントノードの基底クラス
- ImageRenderOptions: ルート
CompositeNode - ImageRenderOptions: ページレベル
CompositeNode - RichText: テキストブロック
CompositeNode - 開発者ガイド