Outline / OutlineElement — Aspose.Note FOSS for Python API Reference

Classe: Outline

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

Outline é um contêiner posicional colocado diretamente em um Page. Ele contém coordenadas X/Y e uma largura que descrevem onde o bloco de conteúdo é posicionado na tela da página. Seus filhos diretos são OutlineElement nós.


ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
X`floatNone`ImageRenderOptions
Y`floatNone`ImageRenderOptions
Width`floatNone`ImageRenderOptions

Herda de CompositeNode

Propriedade / MétodoImageRenderOptions
FirstChildPrimeiro filho direto OutlineElement nó, ou None
LastChildÚltimo filho direto OutlineElement nó, ou None
AppendChildLast(node)Anexar um OutlineElement ao final
AppendChildFirst(node)Adicionar no início um OutlineElement
InsertChild(index, node)Inserir em uma posição específica
RemoveChild(node)Remover um nó filho
GetChildNodes(Type)Busca recursiva em profundidade retornando todos os descendentes do tipo especificado
for child in outlineIterar filhos diretos

Herda de Node

ImageRenderOptionsImageRenderOptions
ParentNodeO contêiner Page
DocumentA raiz Document

ImageRenderOptions

Accept(visitor)

outline.Accept(visitor: DocumentVisitor) -> None

ImageRenderOptions VisitOutlineStart(outline) no visitante, então visita recursivamente cada filho OutlineElement, então VisitOutlineEnd(outline).


Exemplos de Uso

Coletar todos os outlines em uma página

from aspose.note import Document, Page, Outline

doc = Document("MyNotes.one")
for page in doc.GetChildNodes(Page):
    for outline in page.GetChildNodes(Outline):
        print(f"Outline at X={outline.X}, Y={outline.Y}, Width={outline.Width}")

Percorrer elementos de outline dentro de um outline

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

doc = Document("MyNotes.one")
for outline in doc.GetChildNodes(Outline):
    for elem in outline.GetChildNodes(OutlineElement):
        for rt in elem.GetChildNodes(RichText):
            print(rt.Text)

Classe: OutlineElement

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

OutlineElement é o contêiner folha dentro de um Outline. Ele contém nós de conteúdo como RichText, Image, Table, e AttachedFile. Aninhamento é expresso via IndentLevel ao invés da profundidade real da árvore.


ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
IndentLevelintImageRenderOptionsProfundidade de aninhamento dentro do contorno (0 = mais externo)
NumberList`NumberListNone`ImageRenderOptions
Tagslist[NoteTag]ImageRenderOptionsTags do OneNote anexadas a este elemento

Herda de CompositeNode

Propriedade / MétodoImageRenderOptions
FirstChildPrimeiro filho de conteúdo direto
LastChildÚltimo filho direto de conteúdo
AppendChildLast(node)Anexar um nó de conteúdo
GetChildNodes(Type)Busca recursiva na subárvore
for child in elemIterar filhos diretos

Herda de Node

ImageRenderOptionsImageRenderOptions
ParentNodeO contêiner Outline
DocumentA raiz Document

ImageRenderOptions

Accept(visitor)

elem.Accept(visitor: DocumentVisitor) -> None

ImageRenderOptions VisitOutlineElementStart(elem), visita recursivamente os filhos, então VisitOutlineElementEnd(elem).


Exemplos de Uso

Extrair texto simples dos elementos de outline

from aspose.note import Document, OutlineElement, RichText

doc = Document("MyNotes.one")
for elem in doc.GetChildNodes(OutlineElement):
    for rt in elem.GetChildNodes(RichText):
        if rt.Text.strip():
            print(f"  [indent={elem.IndentLevel}] {rt.Text}")

Encontrar itens de lista

from aspose.note import Document, OutlineElement, RichText

doc = Document("MyNotes.one")
for elem in doc.GetChildNodes(OutlineElement):
    if elem.NumberList is not None:
        numbered = elem.NumberList.IsNumbered
        label = "ordered" if numbered else "bulleted"
        for rt in elem.GetChildNodes(RichText):
            print(f"  [{label}] {rt.Text}")

Encontrar elementos de outline marcados

from aspose.note import Document, OutlineElement, RichText

doc = Document("MyNotes.one")
for elem in doc.GetChildNodes(OutlineElement):
    if elem.Tags:
        labels = [t.label for t in elem.Tags if t.label]
        for rt in elem.GetChildNodes(RichText):
            print(f"Tags: {labels}  Text: {rt.Text.strip()!r}")

Construir um outline programaticamente

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

doc = Document()
page = doc.AppendChildLast(Page())

outline = page.AppendChildLast(Outline())

elem = outline.AppendChildLast(OutlineElement())
rt = elem.AppendChildLast(RichText())
rt.Append("Hello from aspose-note")

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

Segurança contra None

NumberList é None para elementos que não fazem parte de uma lista. Tags é sempre uma lista (pode estar vazia). IndentLevel é sempre um int (padrão 0).


Veja Também

 Português