PDF exportálás — Aspose.Note FOSS for Python
Aspose.Note FOSS for Python támogatja a betöltött .one dokumentumok PDF-be exportálását Document.Save() segítségével. A PDF renderelést az opcionális ReportLab könyvtár biztosítja. Ez az egyetlen jelenleg megvalósított mentési formátum; a többi SaveFormat érték UnsupportedSaveFormatException hibát eredményez.
Előfeltételek
Telepítse a könyvtárat a [pdf] extra-val, hogy betöltse a ReportLab-ot:
pip install "aspose-note[pdf]"Ellenőrizze:
python -c "from aspose.note import Document, SaveFormat; print('PDF export ready')"Alapvető export
Exportálja a dokumentum összes oldalát egyetlen PDF-fájlba:
from aspose.note import Document, SaveFormat
doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)Az oldalak a PDF-ben ugyanabban a sorrendben jelennek meg, mint a DOM-ban.
A PdfSaveOptions használata
PdfSaveOptions finomhangolt vezérlést biztosít az exportálás felett. Használd ezt a csupasz SaveFormat enum helyett:
from aspose.note import Document
from aspose.note.saving import PdfSaveOptions
opts = PdfSaveOptions()
doc = Document("MyNotes.one")
doc.Save("output.pdf", opts)Megjegyzés a
PageIndex/PageCount-ról: Ezek a mezők aPdfSaveOptions-nél léteznek, de nem kerülnek továbbításra a PDF exportálóba a v26.3.1 verzióban, és nincs hatásuk. A teljes dokumentum mindig exportálva van.
PdfSaveOptions referencia
| Property | Type | Default | Description |
|---|---|---|---|
PageIndex | int | 0 | A mező létezik, de nem továbbítódik a PDF exportálóhoz a v26.3.1‑ben (nincs hatása) |
PageCount | int | None | None | A mező létezik, de nem továbbítódik a PDF exportálóhoz a v26.3.1‑ben (nincs hatása) |
Tömeges exportálás
Konvertálja a könyvtárban lévő összes .one fájlt PDF formátumba:
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}")Betöltés adatfolyamból, mentés fájlba
Kombinálja a folyam-alapú betöltést a fájl-alapú PDF kimenettel:
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 bájtok lekérése memóriában
Document.Save() közvetlenül elfogad egy bináris adatfolyamot: nincs szükség ideiglenes fájlra:
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")Támogatott SaveFormat értékek
| Mentési formátum | Állapot |
|---|---|
SaveFormat.Pdf | Megvalósítva |
Általános hibák
| Hiba | Oka | Javítás |
|---|---|---|
ImportError: No module named 'reportlab' | [pdf] extra nincs telepítve | pip install "aspose-note[pdf]" |
UnsupportedSaveFormatException | Nem-PDF SaveFormat használva | Csak a SaveFormat.Pdf használata |
IncorrectPasswordException | Titkosított .one fájl | Használjon egy titkosítatlan fájlt |
FileNotFoundError | A bemeneti .one útvonal hibás | Ellenőrizze az útvonalat a Path.exists() segítségével |
| Jogosultsági hiba a kimeneten | A kimeneti könyvtár nem írható | Ellenőrizze a kimeneti könyvtár jogosultságait |