PDF निर्यात — Aspose.Note FOSS Python के लिए
Aspose.Note FOSS for Python supports exporting loaded .one दस्तावेज़ को PDF में परिवर्तित करने के लिए Document.Save(). PDF रेंडरिंग वैकल्पिक द्वारा प्रदान की जाती है ReportLab लाइब्रेरी। यह वर्तमान में लागू किया गया एकमात्र सहेजने का फ़ॉर्मेट है; अन्य SaveFormat मान त्रुटि उत्पन्न करते हैं UnsupportedSaveFormatException.
पूर्वापेक्षाएँ
लाइब्रेरी को इस के साथ स्थापित करें [pdf] अतिरिक्त का उपयोग करके ReportLab को शामिल करें:
pip install "aspose-note[pdf]"सत्यापित करें:
python -c "from aspose.note import Document, SaveFormat; print('PDF export ready')"बुनियादी निर्यात
एक दस्तावेज़ के सभी पृष्ठों को एकल PDF फ़ाइल में निर्यात करें:
from aspose.note import Document, SaveFormat
doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)पृष्ठ PDF में उसी क्रम में दिखाई देते हैं जैसा कि वे DOM में दिखाई देते हैं।.
PdfSaveOptions का उपयोग करके
PdfSaveOptions निर्यात पर सूक्ष्म नियंत्रण प्रदान करता है। इसे कच्चे के बजाय पास करें SaveFormat enum:
from aspose.note import Document
from aspose.note.saving import PdfSaveOptions
opts = PdfSaveOptions()
doc = Document("MyNotes.one")
doc.Save("output.pdf", opts)नोट: PageIndex / PageCount: ये फ़ील्ड मौजूद हैं PdfSaveOptions लेकिन हैं v26.3.1 में PDF निर्यातकर्ता को अग्रेषित नहीं किए जाते और कोई प्रभाव नहीं डालते। पूरा दस्तावेज़ हमेशा निर्यात किया जाता है।.
PdfSaveOptions संदर्भ
| प्रॉपर्टी | प्रकार | डिफ़ॉल्ट | विवरण |
|---|---|---|---|
PageIndex | int | 0 | फ़ील्ड मौजूद है लेकिन v26.3.1 में PDF निर्यातकर्ता को अग्रेषित नहीं किया गया (कोई प्रभाव नहीं पड़ता) |
PageCount | `int | None` | None |
बैच निर्यात
हर एक को परिवर्तित करें .one डायरेक्टरी में फ़ाइल को 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}")स्ट्रीम से लोड करें, फ़ाइल में सहेजें
स्ट्रीम-आधारित लोडिंग को फ़ाइल-आधारित PDF आउटपुट के साथ संयोजित करें:
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 बाइट्स प्राप्त करें
Document.Save() सीधे बाइनरी स्ट्रीम को स्वीकार करता है: कोई अस्थायी फ़ाइल आवश्यक नहीं:
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")समर्थित SaveFormat मान
| SaveFormat | स्थिति |
|---|---|
SaveFormat.Pdf | लागू किया गया |
सामान्य त्रुटियाँ
| त्रुटि | कारण | सुधार |
|---|---|---|
ImportError: No module named 'reportlab' | [pdf] extra स्थापित नहीं है | pip install "aspose-note[pdf]" |
UnsupportedSaveFormatException | Non-PDF SaveFormat उपयोग किया गया | उपयोग करें SaveFormat.Pdf केवल |
IncorrectPasswordException | एन्क्रिप्टेड .one फ़ाइल | एक बिना एन्क्रिप्शन वाली फ़ाइल का उपयोग करें |
FileNotFoundError | इनपुट .one पथ गलत है | पथ को सत्यापित करें Path.exists() |
| आउटपुट पर अनुमति त्रुटि | Output directory लिखने योग्य नहीं है | Output directory की अनुमतियों की जाँच करें |