PDF-eksport — Aspose.Note FOSS for Python

Aspose.Note FOSS for Python supports exporting loaded .one dokumenter til PDF via Document.Save(). PDF-gjengivelse leveres av den valgfrie ReportLab biblioteket. Dette er det eneste lagringsformatet som for øyeblikket er implementert; andre SaveFormat verdier kaster UnsupportedSaveFormatException.


Forutsetninger

Installer biblioteket med [pdf] ekstra for å hente inn ReportLab:

pip install "aspose-note[pdf]"

Verifiser:

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

Grunnleggende eksport

Eksporter alle sider i et dokument til en enkelt PDF-fil:

from aspose.note import Document, SaveFormat

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

Sider vises i PDF-en i samme rekkefølge som de vises i DOM-en.


Bruke PdfSaveOptions

PdfSaveOptions gir finjustert kontroll over eksporten. Send den i stedet for den rene SaveFormat enum:

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

opts = PdfSaveOptions()

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

Merk om PageIndex / PageCount: Disse feltene finnes på PdfSaveOptions men er ikke videresendt til PDF-eksportøren i v26.3.1 og har ingen effekt. Hele dokumentet eksporteres alltid.


PdfSaveOptions-referanse

EgenskapTypeStandardBeskrivelse
PageIndexint0Feltet finnes, men ikke videresendt til PDF exporter i v26.3.1 (har ingen effekt)
PageCount`intNone`None

Batch-eksport

Konverter hver .one fil i en katalog til 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}")

Last inn fra strøm, lagre til fil

Kombiner strøm-basert innlasting med fil-basert PDF-utdata:

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)

Hent PDF-byter i minnet

Document.Save() aksepterer en binær strøm direkte: ingen midlertidig fil nødvendig:

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

Støttede SaveFormat-verdier

SaveFormatStatus
SaveFormat.PdfImplementert

Vanlige feil

FeilÅrsakFiks
ImportError: No module named 'reportlab'[pdf] ekstra er ikke installertpip install "aspose-note[pdf]"
UnsupportedSaveFormatExceptionNon-PDF SaveFormat bruktBruk SaveFormat.Pdf kun
IncorrectPasswordExceptionKryptert .one-filBruk en ukryptert fil
FileNotFoundErrorInput .one sti feilVerifiser sti med Path.exists()
Tillatelsesfeil på utdataUtdata-mappen er ikke skrivbarSjekk tillatelsene for utdata-mappen
 Norsk