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

کلاس: Outline

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

Outline یک محفظه موقعیتی است که مستقیماً بر روی یک Page. این محفظه مختصات X/Y و عرضی دارد که مکان قرارگیری بلوک محتوا را بر روی بوم صفحه توصیف می‌کند. فرزندان مستقیم آن OutlineElement گره‌ها.


ImageRenderOptions

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

ارث‌بری شده از CompositeNode

ویژگی / متدImageRenderOptions
FirstChildاولین فرزند مستقیم OutlineElement گره، یا None
LastChildآخرین فرزند مستقیم OutlineElement گره، یا None
AppendChildLast(node)افزودن یک OutlineElement به انتها
AppendChildFirst(node)افزودن به ابتدای یک OutlineElement
InsertChild(index, node)درج در موقعیت خاص
RemoveChild(node)حذف یک گره فرزند
GetChildNodes(Type)جستجوی بازگشتی عمق‑اول که تمام نوادگان از نوع داده‌شده را برمی‌گرداند
for child in outlineتکرار بر فرزندان مستقیم

ارث‌بری شده از Node

ImageRenderOptionsImageRenderOptions
ParentNodeحاوی Page
Documentریشه Document

ImageRenderOptions

Accept(visitor)

outline.Accept(visitor: DocumentVisitor) -> None

ImageRenderOptions VisitOutlineStart(outline) در بازدیدکننده، سپس به‌صورت بازگشتی هر فرزند را بازدید می‌کند OutlineElement,، سپس VisitOutlineEnd(outline).


مثال‌های استفاده

جمع‌آوری تمام Outlineها در یک صفحه

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

پیمایش عناصر Outline درون یک 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)

کلاس: OutlineElement

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

OutlineElement یک ظرف برگ درون یک Outline. این گره‌های محتوا مانند RichText, Image, Table,، و AttachedFile. IndentLevel به‌جای عمق واقعی درخت.


ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
IndentLevelintImageRenderOptionsعمق تو در تویی درون طرح کلی (0 = بیرونی‌ترین)
NumberList`NumberListNone`ImageRenderOptions
Tagslist[NoteTag]ImageRenderOptionsبرچسب‌های OneNote به این عنصر پیوست شده‌اند

ارث‌بری شده از CompositeNode

ویژگی / متدImageRenderOptions
FirstChildاولین فرزند مستقیم محتوا
LastChildآخرین فرزند مستقیم محتوا
AppendChildLast(node)افزودن یک گره محتوا
GetChildNodes(Type)جستجوی بازگشتی در زیردرخت
for child in elemتکرار بر فرزندان مستقیم

ارث‌بری شده از Node

ImageRenderOptionsImageRenderOptions
ParentNodeحاوی Outline
Documentریشه Document

ImageRenderOptions

Accept(visitor)

elem.Accept(visitor: DocumentVisitor) -> None

ImageRenderOptions VisitOutlineElementStart(elem), به‌صورت بازگشتی فرزندان را بازدید می‌کند، سپس VisitOutlineElementEnd(elem).


مثال‌های استفاده

استخراج متن ساده از عناصر 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}")

یافتن آیتم‌های لیست

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

یافتن عناصر Outline با برچسب

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

ساخت یک Outline به‌صورت برنامه‌نویسی

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)

ایمنی در برابر None

NumberList است None برای عناصری که بخشی از یک فهرست نیستند. Tags همیشه یک فهرست است (ممکن است خالی باشد). IndentLevel همیشه یک int (پیش‌فرض ۰).


همچنین ببینید

 فارسی