PDF Eksports — Aspose.Note FOSS priekš Python
Aspose.Note FOSS for Python supports exporting loaded .one dokumenti uz PDF, izmantojot Document.Save(). PDF renderēšanu nodrošina izvēles ReportLab bibliotēka. Šis ir vienīgais saglabāšanas formāts, kas pašlaik ir ieviests; citi SaveFormat vērtības izraisa UnsupportedSaveFormatException.
Priekšnosacījumi
Instalējiet bibliotēku ar [pdf] papildu, lai iekļautu ReportLab:
pip install "aspose-note[pdf]"Pārbaudiet:
python -c "from aspose.note import Document, SaveFormat; print('PDF export ready')"Pamata eksports
Eksportējiet visus dokumenta lapas uz vienu PDF failu:
from aspose.note import Document, SaveFormat
doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)Lapas PDF parādās tajā pašā secībā, kā tās parādās DOM.
Izmantojot PdfSaveOptions
PdfSaveOptions nodrošina smalku kontroli pār eksportu. Nododiet to tā vietā, nevis vienkāršo SaveFormat uzskaitījumu:
from aspose.note import Document
from aspose.note.saving import PdfSaveOptions
opts = PdfSaveOptions()
doc = Document("MyNotes.one")
doc.Save("output.pdf", opts)Piezīme par PageIndex / PageCount: Šie lauki pastāv PdfSaveOptions , bet ir netiek pārsūtīti PDF eksportētājam versijā v26.3.1 un neietekmē neko. Vesels dokuments vienmēr tiek eksportēts.
PdfSaveOptions atsauce
| Īpašība | Tips | Noklusējums | Apraksts |
|---|---|---|---|
PageIndex | int | 0 | Lauks pastāv, bet nav pārsūtīts uz PDF eksportētāju v26.3.1 (nav ietekmes) |
PageCount | `int | None` | None |
Grupas eksports
Pārveidot katru .one failu direktorijā uz 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}")Ielādēt no straumes, saglabāt uz faila
Apvienojiet straumes balstītu ielādi ar faila balstītu PDF izvadi:
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)Iegūt PDF baitus atmiņā
Document.Save() pieņem bināro plūsmu tieši: nav vajadzīgs pagaidu fails:
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")Atbalstītās SaveFormat vērtības
| SaveFormat | Statuss |
|---|---|
SaveFormat.Pdf | Īstenots |
Biežākās kļūdas
| Kļūda | Iemesls | Labojums |
|---|---|---|
ImportError: No module named 'reportlab' | [pdf] papildus nav instalēts | pip install "aspose-note[pdf]" |
UnsupportedSaveFormatException | Izmantots ne-PDF saglabāšanas formāts | Izmantot SaveFormat.Pdf tikai |
IncorrectPasswordException | Šifrēts .one fails | Izmantojiet nešifrētu failu |
FileNotFoundError | Ievades .one ceļš ir nepareizs | Pārbaudiet ceļu ar Path.exists() |
| Atļaujas kļūda izvadē | Izvades direktorija nav rakstāma | Pārbaudiet izvades direktorijas atļaujas |