Ú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-notefrom 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
| Format | Extension | Read | Write |
|---|---|---|---|
| OneNote 2010 | .one | ✓ | — |
| OneNote 2007 | .one | ✓ | — |
| OneNote Online | .one | ✓ | — |
.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