PDF izvoz — Aspose.Note FOSS za Python

Aspose.Note FOSS for Python supports exporting loaded .one dokumenata u PDF putem Document.Save(). PDF renderovanje obezbeđuje opcioni ReportLab biblioteka. Ovo je jedini format za čuvanje trenutno implementiran; drugi SaveFormat vrednosti izazivaju UnsupportedSaveFormatException.


Preduslovi

Instalirajte biblioteku sa [pdf] dodatkom da povučete ReportLab:

pip install "aspose-note[pdf]"

Proverite:

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

Osnovni izvoz

Izvezite sve stranice dokumenta u jedan PDF fajl:

from aspose.note import Document, SaveFormat

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

Stranice se pojavljuju u PDF-u istim redosledom kao što se pojavljuju u DOM-u.


Korišćenje PdfSaveOptions

PdfSaveOptions pruža detaljnu kontrolu nad izvozom. Proslijedite ga umesto golog SaveFormat enum:

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

opts = PdfSaveOptions()

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

Napomena o PageIndex / PageCount: Ova polja postoje na PdfSaveOptions ali su ne prosleđuju se PDF izvoznika u v26.3.1 i nemaju efekta. Ceo dokument se uvek izvozi.


Referenca za PdfSaveOptions

SvojstvoTipPodrazumevanoOpis
PageIndexint0Polje postoji, ali nije prosleđeno PDF izvozniku u v26.3.1 (nema efekta)
PageCount`intNone`None

Grupni izvoz

Pretvori svaki .one datoteka u direktorijumu u 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}")

Učitaj iz toka, sačuvaj u fajl

Kombinujte učitavanje zasnovano na toku sa PDF izlazom zasnovanim na fajlu:

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)

Dobijte PDF bajtove u memoriji

Document.Save() prima binarni tok direktno: nije potreban privremeni fajl:

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

Podržane vrednosti SaveFormat

SaveFormatStatus
SaveFormat.PdfImplementirano

Uobičajene greške

GreškaUzrokPopravka
ImportError: No module named 'reportlab'[pdf] extra nije instaliranpip install "aspose-note[pdf]"
UnsupportedSaveFormatExceptionKorišćen je SaveFormat koji nije PDFKoristi SaveFormat.Pdf samo
IncorrectPasswordExceptionŠifrovan .one fajlKoristite nešifrovanu datoteku
FileNotFoundErrorPogrešan put .one ulazaProverite put pomoću Path.exists()
Greška dozvole na izlazuIzlazni direktorijum nije upisivProverite dozvole izlaznog direktorijuma
 Српски