Introduction

Aspose.Note FOSS for Python (aspose-note на PyPI) є безкоштовною бібліотекою з ліцензією MIT для Читання Microsoft OneNote .one файли та експорт до PDF в чистому Python. Версія 26.3.2 кораблів з повною документовою об’єктною моделлю, що охоплює сторінки, контури, вузли з багатим текстом, зображення;, і додані файли не потрібно встановлення Microsoft Office або залежність від Windows.


Ключові особливості

Завантаження документів та виявлення форматизації

Document є корінням моделі об’єкта. Пройдіть шлях файлу для завантаження будь-якої підтримуваної OneNote Формат. FileFormat звіти про власність, який формат був виявлений.

from aspose.note import Document, FileFormat

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

Переглядати сторінки та заголовки

Страниці є: Page вузлів безпосередньо під Document.Кожна з них. Page метадані, такі як: як Author, CreationTime, і Title.- Я знаю. Title вузол, в свою чергу забезпечує: TitleText, TitleDate, і TitleTime як 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}")

Читання багатотекстового контенту

RichText вузли є вузьки лист, які несуть фактичний вміст тексту. Ітерація RichText об’єкт з стандартом for кожен елемент є сегментом струн. Використовуйте Append() додати: новий текст зі стилем.

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])

Свойства конфігурації очерта

Outline вузли розкривають координати розташування: HorizontalOffset, VerticalOffset, MaxWidth, MaxHeight, і MinWidth.Вони корисні для розкладання-свідомій витягування або перекомпоновані сторінки.

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

Створення дерева документів

Створити Document з нуля, використовуючи CompositeNode.AppendChildLast(). Кожен тип вузла може бути додано до його дійсного материнського: PageDocument, OutlinePage, RichText вузли → Outline.

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)

Експорт до PDF-файлу

Document.Save() приймає SaveFormat.Pdf для написання PDF на шлях файлу або а) BytesIO експорт працює повністю в процесі без будь-якого зовнішнього рендеровуючого пристрою.

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

Швидкий старт

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)

Підтримувані формати

FormatExtensionReadWrite
OneNote 2010.one
OneNote 2007 року.one
OneNote онлайн.one
PDF.pdf

Відкритий код та ліцензія

Aspose.Note FOSS for Python is released under the MIT License. Install from PyPI as aspose-note.Коммерчне використання, перерозподіл та модифікація дозволені.


Починати з