Introducción

Aspose.Note FOSS for Python (aspose-note en PyPI) es una biblioteca gratuita, licenciada por MIT para Leer más sobre Microsoft OneNote .one archivos y exportación a PDF en Python puro. versión 26.3.2 barcos con un modelo de objeto completo del documento que cubre páginas, listas, nódulos de texto rico, imágenes, y los archivos anexados — no se requiere instalación de Microsoft Office o dependencia de Windows.


Características clave

Cargar documentos y detección de formato

Document es la raíz del modelo de objeto. pasar un camino de archivo para cargar cualquier OneNote apoyado El formato. el FileFormat informes de propiedad cuyo formato se detecta.

from aspose.note import Document, FileFormat

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

Viajar por páginas y títulos

Las páginas son Page Los nodos están directamente debajo de la Document.Cada uno Page Exponen metadatos como este como Author, CreationTime,y, Title.El Title El nodo a su vez proporciona TitleText, TitleDate,y, TitleTime como RichText Los niños .

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

Leer contenido en texto rico

RichText Los nódulos son los núcleos de hoja que llevan el contenido del texto real. RichText Objetos con un estándar for loop — cada elemento es un segmento de string. Append() Para añadir Nuevo texto con un estilo.

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

Propiedades de Layout Outline

Outline Los nódulos exponen las coordenadas de layout: HorizontalOffset, VerticalOffset, MaxWidth, MaxHeight,y, MinWidth.Son útiles para la extracción de la disposición-consciente o reorganizar páginas.

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

Documento de la construcción del árbol

Construye a Document de Scratch utilizando CompositeNode.AppendChildLast().Cada tipo de nodo Se puede añadir a su padre válido: PageDocument, OutlinePage, RichText Nódulos → 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)

Exportación a PDF

Document.Save() aceptan SaveFormat.Pdf para escribir un PDF en una ruta de archivo o a BytesIO La exportación se realiza completamente en el proceso sin ningún render externo.

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

Inicio rápido

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)

Formatos apoyados

FormatoExtensionesLeerEscribe
El OneNote 2010.one
El OneNote 2007.one
OneNote en línea.one
PDF.pdf

Open Source y Licenciación

Aspose.Note FOSS for Python is released under the MIT License. Install from PyPI as aspose-note.El uso comercial, redistribución y modificación son todos permitidos.


Empezando a

Recursos relacionados