Úvodní článek

Aspose.Zdroj FOSS pro Python (aspose-note na PyPI) je bezplatná knihovna s licencí MIT, která umožňuje čtení souborů Microsoft OneNote .one a exportování do PDF v čistém jazyce Python. Verze 26.3.2 nabízí kompletní objektový model dokumentu pokrývající stránky, kontury, uzly bohatého textu, obrázky a přiložené soubory.


Klíčové prvky

Obnášení a zjišťování formátu dokumentu

Document je kořenem objektového modelu. Přejít cestu souboru pro načtení jakéhokoli podporovaného formátu OneNote. Vlastnost ̋FileFormat∂ hlásí, který formát byl detekován.

from aspose.note import Document, FileFormat

doc = Document("notebook.one")
print(f"Format : {doc.FileFormat}")
print(f"Pages  : {len(list(doc))}")

Procházení stránek a titulů

Stránky jsou Page uzly přímo pod ̋Documentˇ. Každá ̆Pagˇ odhalí metadatě jako je ∂Author̅, ゚CreationTime̅ a ⌒Title̅. ̇Titl̅ uzel zase poskytuje ̨Titlteks̅ , ゙Titldate̅ i ̊Titlitím̅ jako děti RichText̅ .

from aspose.note import Document, Page

doc = Document("notebook.one")
for page in doc.GetChildNodes(Page):
    print(f"Author  : {page.Author}")
    print(f"Created : {page.CreationTime}")
    if page.Title and page.Title.TitleText:
        print(f"Title   : {page.Title.TitleText}")

Čtení obsahu bohatého textu

RichText uzly jsou uzlů list, které nesou skutečný textový obsah. Iterujte objekt ̋RICHTEXT∂ s standardním ›for⌒ smyčku každý element je segment řetězce . Použijte ゚Append (() ̅ přidat nový text se stylem.

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

doc = Document("notebook.one")
for page in doc.GetChildNodes(Page):
    for rt in page.GetChildNodes(RichText):
        text = "".join(rt)
        if text.strip():
            print(text[:120])

Vlastnosti rozvrhu v šabloně

Outline uzly odhalují souřadnice rozvrhu: ̋HorizontálníOffset∂, ̨Vertikální Offsat∂ , ̆MaxWidth∂ a ∂MaxHeight∂. Ty jsou užitečné pro extrahování nebo překonstruování stránek s ohledem na layout.

from aspose.note import Document, Outline

doc = Document("notebook.one")
for outline in doc.GetChildNodes(Outline):
    print(f"HOffset={outline.HorizontalOffset}  VOffset={outline.VerticalOffset}  MaxW={outline.MaxWidth}")

Výstavba stromů dokumentů

Vytvořte Document od začátku pomocí aplikace ̋CompositeNode.AppendChildLast() ̆. Každý typ uzlu může být přidán k jeho platnému rodiči: ∂Page → ゚Dokument, ⌒Outline`→ ゙Pagˇˇ, a ̅RichText̅ nodes → ¬Outlin ̈.

from aspose.note import Document, Page, Outline, RichText, ParagraphStyle, Title, SaveFormat

doc = Document()
page = Page()

title_text = RichText()
title_text.Append("My New Page", ParagraphStyle())
title = Title()
title.TitleText = title_text
page.Title = title

outline = Outline()
page.AppendChildLast(outline)
doc.AppendChildLast(page)
doc.Save("new_notebook.pdf", SaveFormat.Pdf)

Export do PDF

`Document.Save ((() ⌒ přijímá ̋SavesFormat.Pdf∂ pro psaní PDF na cestu souboru nebo do bufera ̨BytesIO∂. Export probíhá zcela v procesu bez jakéhokoli externího renderu.

import io
from aspose.note import Document, SaveFormat

doc = Document("notebook.one")

# File output
doc.Save("export.pdf", SaveFormat.Pdf)

# In-memory buffer
buf = io.BytesIO()
doc.Save(buf, SaveFormat.Pdf)
print(f"PDF bytes: {len(buf.getvalue())}")

Rychlý start

pip install aspose-note
from aspose.note import Document, Page, RichText, SaveFormat

doc = Document("notebook.one")

# Print all text
for page in doc.GetChildNodes(Page):
    for rt in page.GetChildNodes(RichText):
        print("".join(rt))

# Export to PDF
doc.Save("output.pdf", SaveFormat.Pdf)

Podporované formáty

FormatExtensionReadWrite
OneNote 2010.one
OneNote 2007.one
OneNote Online.one
PDF.pdf

Open Source & Licence

Aspose.Poznámka FOSS pro Python je vydán pod licencí MIT. Instalace z PyPI jako aspose-note. Komerční použití, redistribuce a úprava jsou všechny povoleny.


Jak začít?

  • Jak začít?
  • Příručka pro vývojáře
  • KB Články
  • Odkaz na API