PDF Export — Aspose.Note FOSS pre Python

Aspose.Note FOSS for Python supports exporting loaded .one dokumenty do PDF pomocou Document.Save(). Vykresľovanie PDF je poskytované voliteľným ReportLab knižnica. Toto je jediný formát ukladania momentálne implementovaný; ostatné SaveFormat hodnoty vyvolávajú UnsupportedSaveFormatException.


Predpoklady

Nainštalujte knižnicu s [pdf] extra, aby ste načítali ReportLab:

pip install "aspose-note[pdf]"

Overenie:

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

Základný export

Exportujte všetky stránky dokumentu do jedného PDF súboru:

from aspose.note import Document, SaveFormat

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

Stránky sa v PDF zobrazia v rovnakom poradí, v akom sa objavujú v DOM.


Použitie PdfSaveOptions

PdfSaveOptions poskytuje detailnú kontrolu nad exportom. Použite ho namiesto holého SaveFormat enum:

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

opts = PdfSaveOptions()

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

Poznámka k PageIndex / PageCount: Tieto polia existujú na PdfSaveOptions ale sú neodovzdávané PDF exportéru vo verzii v26.3.1 a nemajú žiadny účinok. Celý dokument je vždy exportovaný.


Referenčná dokumentácia PdfSaveOptions

VlastnosťTypPredvolenéPopis
PageIndexint0Pole existuje, ale neodovzdá sa PDF exportéru v verzii v26.3.1 (nemá žiadny účinok)
PageCount`intNone`None

Dávkový export

Previesť každý .one súbor v adresári na 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}")

Načítanie zo streamu, uloženie do súboru

Kombinujte načítanie založené na streamoch s výstupom PDF do súboru:

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)

Získajte PDF bajty v pamäti

Document.Save() prijíma binárny prúd priamo: nie je potrebný dočasný súbor:

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

Podporované hodnoty SaveFormat

SaveFormatStav
SaveFormat.PdfImplementované

Bežné chyby

ChybaPríčinaOprava
ImportError: No module named 'reportlab'[pdf] extra nie je nainštalovanýpip install "aspose-note[pdf]"
UnsupportedSaveFormatExceptionPoužitý SaveFormat, ktorý nie je PDFPoužiť SaveFormat.Pdf iba
IncorrectPasswordExceptionŠifrovaný .one súborPoužite nešifrovaný súbor
FileNotFoundErrorVstupná cesta .one je nesprávnaOverte cestu pomocou Path.exists()
Chyba oprávnenia pri výstupeVýstupný adresár nie je zapisovateľnýSkontrolujte oprávnenia výstupného adresára
 Slovenčina