PDF‑export — Aspose.Note FOSS voor Python

Aspose.Note FOSS for Python supports exporting loaded .one documenten naar PDF via Document.Save(). PDF-rendering wordt geleverd door de optionele ReportLab bibliotheek. Dit is het enige opslaan-formaat dat momenteel is geïmplementeerd; andere SaveFormat waarden veroorzaken UnsupportedSaveFormatException.


Vereisten

Installeer de bibliotheek met de [pdf] extra om ReportLab binnen te halen:

pip install "aspose-note[pdf]"

Verifiëren:

python -c "from aspose.note import Document, SaveFormat; print('PDF export ready')"

Basisexport

Exporteer alle pagina’s van een document naar één enkel PDF-bestand:

from aspose.note import Document, SaveFormat

doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)

Pagina’s verschijnen in de PDF in dezelfde volgorde als ze in de DOM staan.


Gebruik van PdfSaveOptions

PdfSaveOptions biedt fijnmazige controle over de export. Geef het door in plaats van de kale SaveFormat enum:

from aspose.note import Document
from aspose.note.saving import PdfSaveOptions

opts = PdfSaveOptions()

doc = Document("MyNotes.one")
doc.Save("output.pdf", opts)

Opmerking over PageIndex / PageCount: Deze velden bestaan op PdfSaveOptions maar zijn niet doorgestuurd naar de PDF-exporteur in v26.3.1 en hebben geen effect. Het volledige document wordt altijd geëxporteerd.


PdfSaveOptions-referentie

EigenschapTypeStandaardBeschrijving
PageIndexint0Veld bestaat maar niet doorgestuurd naar PDF-exporteur in v26.3.1 (heeft geen effect)
PageCount`intNone`None

Batch-export

Converteer elke .one bestand in een map naar PDF:

from pathlib import Path
from aspose.note import Document, SaveFormat

input_dir = Path("./notes")
output_dir = Path("./pdfs")
output_dir.mkdir(parents=True, exist_ok=True)

for one_file in sorted(input_dir.glob("*.one")):
    try:
        doc = Document(str(one_file))
        out = output_dir / one_file.with_suffix(".pdf").name
        doc.Save(str(out), SaveFormat.Pdf)
        print(f"OK  {one_file.name} -> {out.name}")
    except Exception as exc:
        print(f"ERR {one_file.name}: {exc}")

Laden vanuit stream, opslaan naar bestand

Combineer stream-gebaseerd laden met bestand-gebaseerde PDF-uitvoer:

from pathlib import Path
from aspose.note import Document, SaveFormat

one_bytes = Path("MyNotes.one").read_bytes()

import io
doc = Document(io.BytesIO(one_bytes))
doc.Save("output.pdf", SaveFormat.Pdf)

PDF-bytes in geheugen ophalen

Document.Save() accepteert een binaire stream direct: geen tijdelijk bestand nodig:

import io
from aspose.note import Document, SaveFormat
from aspose.note.saving import PdfSaveOptions

doc = Document("MyNotes.one")

buf = io.BytesIO()
doc.Save(buf, PdfSaveOptions())
pdf_bytes = buf.getvalue()
print(f"PDF size: {len(pdf_bytes)} bytes")

Ondersteunde SaveFormat-waarden

SaveFormatStatus
SaveFormat.PdfGeïmplementeerd

Veelvoorkomende fouten

FoutOorzaakOplossing
ImportError: No module named 'reportlab'[pdf] extra niet geïnstalleerdpip install "aspose-note[pdf]"
UnsupportedSaveFormatExceptionNiet-PDF SaveFormat gebruiktGebruik SaveFormat.Pdf alleen
IncorrectPasswordExceptionVersleuteld .one-bestandGebruik een niet-versleuteld bestand
FileNotFoundErrorInvoerpad .one onjuistVerifieer pad met Path.exists()
Machtigingsfout bij uitvoerUitvoermap niet schrijfbaarControleer de rechten van de uitvoermap
 Nederlands