PDF Export — Aspose.Note FOSS لـ Python

Aspose.Note FOSS for Python supports exporting loaded .one إرسال رسالة إلى PDF عبر Document.Save(). PDF rendering يتم توفيرها من قبل الاختيارية ReportLab هذه هي النموذج الوحيد الذي يتم تنفيذه حالياً؛ غيرها من SaveFormat قيمة الارتفاع UnsupportedSaveFormatException.


المعايير

إعداد المكتبة مع [pdf] المزيد من المعلومات في ReportLab:

pip install aspose-note

تحقق :

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

الصادرات الأساسية

تصدير جميع صفحات المستند إلى ملف PDF واحد:

from aspose.note import Document, SaveFormat

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

تظهر الصفحات في PDF بنفس الترتيب كما تُظهر في DOM.


استخدام PDFSaveOptions

PdfSaveOptions يقدم السيطرة على الصادرات الخضراء.مر به بدلا من البراعم SaveFormat إينوم :

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 ولكن هم لا يتم إرسالها إلى مستورد PDF في v26.3.1 لا يوجد أي تأثير ، يتم تصدير الوثيقة بأكملها دائمًا.


PdfSaveOptions مرجعية

الممتلكاتنوعالافتراضيةوصف
PageIndexint0الميدان موجود ولكن لا يتم إرسالها إلى مستورد PDF في v26.3.1 (لا يوجد تأثير)
PageCount`intNone`None

التصدير Batch

PDF هو تنسيق تصدير فقط لهذا المكتبة. .one يتم حفظ الملفات كإدخال وتخزينها إلى PDF كنتائج؛ لا يتم دعم الاتجاه العكسي (PDF كدخول).

تصدير كل .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}")

تحميل من Stream, حفظ إلى الملفات

الجمع بين التحميل القائم على البث مع إصدار 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 Bytes في الذاكرة

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] غير متوفرة إضافيةpip install "aspose-note[pdf]"
UnsupportedSaveFormatExceptionغير PDF SaveFormat المستخدمةاستخدام SaveFormat.Pdf فقط
IncorrectPasswordExceptionالملفات .one fileاستخدم ملف غير مشفر
FileNotFoundErrorإدخال .1 مسار خاطئتحقق من المسار مع Path.exists()
خطأ في تصنيع السماحمكتبة النسخ غير قابلة للكتابةتحقق من تصاريح دليل الناتج
 العربية