تحويل PPT و PPTX إلى PDF في Python | خيارات متقدمة
نظرة عامة
تحويل عروض PowerPoint (PPT و PPTX و ODP) إلى تنسيق PDF في Python يقدم عدة مزايا، بما في ذلك ضمان التوافق عبر الأجهزة المختلفة والحفاظ على تخطيط وتنسيق العرض التقديمي. يوضح هذا الدليل كيفية تحويل العروض إلى مستندات PDF، واستخدام خيارات متعددة للتحكم في جودة الصور، وإدراج الشرائح المخفية، وحماية مستندات PDF بكلمة مرور، واكتشاف استبدال الخطوط، وتحديد شرائح معينة للتحويل، وتطبيق معايير الامتثال على المستندات الناتجة.
تحويلات PowerPoint إلى PDF
- PPT
- PPTX
- ODP
لتحويل عرض تقديمي إلى PDF في Python، عليك ببساطة تمرير اسم الملف كمعامل إلى فئة Presentation ثم حفظ العرض بتنسيق PDF باستخدام طريقة save. تُظهر فئة Presentation طريقة save التي تُستخدم عادةً لتحويل العرض إلى PDF.
Note
Aspose.Slides for Python يضيف معلومات API وإصدارها إلى المستندات الناتجة. على سبيل المثال، عند تحويل عرض إلى PDF، يملأ Aspose.Slides for Python حقل Application بالقيمة ‘Aspose.Slides’ وحقل PDF Producer بقيمة على شكل ‘Aspose.Slides v XX.XX’. ملاحظة أنه لا يمكنك إرشاد Aspose.Slides for Python لتغيير أو إزالة هذه المعلومات من المستندات الناتجة.Aspose.Slides يسمح لك بتحويل:
- العروض الكاملة إلى PDF
- شرائح محددة في العرض إلى PDF
Aspose.Slides تصدر العروض إلى PDF، مما يضمن أن محتويات ملفات PDF الناتجة تتطابق بشكل وثيق مع العروض الأصلية. يتم عرض العناصر والسمات بدقة في التحويل، بما في ذلك:
- الصور
- مربعات النص والأشكال
- تنسيق النص
- تنسيق الفقرات
- الروابط
- رؤوس وتذييلات
- قوائم نقطية
- الجداول
تحويل PowerPoint إلى PDF
تستخدم عملية التحويل القياسية من PowerPoint إلى PDF الخيارات الافتراضية. في هذه الحالة، يحاول Aspose.Slides تحويل العرض المقدم إلى PDF باستخدام إعدادات مثالية بأعلى مستويات الجودة.
المثال التالي يحمل عرضاً ويحفظ جميع الشرائح المرئية إلى PDF باستخدام إعدادات التصدير الافتراضية.
import aspose.slides as slides
with slides.Presentation("PowerPoint.ppt") as presentation:
presentation.save("PPT-to-PDF.pdf", slides.export.SaveFormat.PDF)
Note
Aspose يقدم محولًا مجانيًا على الإنترنت لـ محول PowerPoint إلى PDF يوضح عملية تحويل العرض إلى PDF. لتجربة التطبيق العملي للإجراء الموصوف هنا، يمكنك تجربة المحول.تحويل PowerPoint إلى PDF مع الخيارات
Aspose.Slides يوفر خيارات مخصصة—خصائص ضمن فئة PdfOptions—تسمح لك بتخصيص ملف PDF (الناتج من عملية التحويل)، قفل PDF بكلمة مرور، أو حتى تحديد كيفية سير عملية التحويل.
تحويل PowerPoint إلى PDF مع خيارات مخصصة
باستخدام خيارات تحويل مخصصة، يمكنك تعيين إعداد جودة الصور النقطية المفضلة، تحديد كيفية معالجة ملفات الميتا، تعيين مستوى ضغط النص، تعيين DPI للصور، إلخ.
المثال التالي يصدر عرضًا إلى PDF 1.5 مع ضبط جودة JPEG إلى 90، ودقة الصورة إلى 300 DPI، وحفظ ملفات الميتا بصيغة PNG، وضغط نص Flate.
import aspose.slides as slides
pdf_options = slides.export.PdfOptions()
pdf_options.jpeg_quality = 90
pdf_options.sufficient_resolution = 300
pdf_options.save_metafiles_as_png = True
pdf_options.text_compression = slides.export.PdfTextCompression.FLATE
pdf_options.compliance = slides.export.PdfCompliance.PDF15
with slides.Presentation("PowerPoint.pptx") as presentation:
presentation.save("PowerPoint-to-PDF.pdf", slides.export.SaveFormat.PDF, pdf_options)
الحفاظ على ملفات OLE المضمَّنة كمرفقات PDF
إذا كان العرض يحتوي على دفتر عمل Excel مضمَّن، قد ترغب في أن يتمكن مستلمو PDF من الوصول إلى بيانات دفتر العمل بالإضافة إلى مشاهدة الشرائح. اضبط PdfOptions.include_ole_data إلى True للحفاظ على ملفات OLE المضمَّنة كمرفقات في PDF الناتج.
القيمة الافتراضية هي False: يُظهر صورة معاينة أو أيقونة كائن OLE على صفحة PDF، لكن الملف المضمَّن لا يُدرج كمرفق. تعيين الخيار إلى True يضيف بيانات الملف أيضًا. تظل المعاينة تمثيلًا بصريًا؛ المرفق يسمح للمستلمين بفتح أو حفظ الملف المضمَّن بشكل منفصل. لا يتحول كائن OLE إلى ورقة عمل Excel تفاعلية على صفحة PDF.
المثال التالي يحمل عرضًا يحتوي بالفعل على دفتر عمل Excel مضمَّن ويصدره إلى PDF مع إرفاق دفتر العمل.
import aspose.slides as slides
pdf_options = slides.export.PdfOptions()
pdf_options.include_ole_data = True
with slides.Presentation("presentation.pptx") as presentation:
presentation.save("presentation.pdf", slides.export.SaveFormat.PDF, pdf_options)
للتحقق من النتيجة:
- افتح PDF المُصدَّر في عارض يدعم المرفقات، مثل Adobe Acrobat Reader.
- افتح لوحة Attachments في العارض وحدد دفتر العمل المضمَّن.
- احفظ المرفق وافتحه في Excel لفحص البيانات، أو افتحه مباشرة إذا سمح العارض بذلك. المعاينة على صفحة PDF منفصلة عن المرفق.
Note
معايير PDF/A تفرض قيودًا على المرفقات: PDF/A-1 تحظر الملفات المضمَّنة، PDF/A-2 تسمح بمرفقات PDF/A فقط، وPDF/A-3 تسمح بأنواع ملفات أخرى بما فيها دفاتر Excel. هذه متطلبات المعايير، ليست قيودًا خاصة بـ Aspose.Slides. يستخدم هذا المثال إعداد الامتثال الافتراضي ولا يُظهر تصدير PDF/A.تحويل PowerPoint إلى PDF مع الشرائح المخفية
إذا كان العرض يحتوي على شرائح مخفية، يمكنك استخدام خيار مخصص—خاصية show_hidden_slides من فئة PdfOptions—لإخبار Aspose.Slides بتضمين الشرائح المخفية كصفحات في PDF الناتج.
المثال التالي يصدر عرضًا إلى PDF مع تضمين أي شرائح مخفية.
import aspose.slides as slides
pdf_options = slides.export.PdfOptions()
pdf_options.show_hidden_slides = True
with slides.Presentation("PowerPoint.pptx") as presentation:
presentation.save("PowerPoint-to-PDF.pdf", slides.export.SaveFormat.PDF, pdf_options)
تحويل PowerPoint إلى PDF محمي بكلمة مرور
المثال التالي يصدر عرضًا إلى PDF يتطلب كلمة المرور password للفتح. تسمح أذونات الوصول بالطباعة، بما في ذلك الطباعة بجودة عالية.
import aspose.slides as slides
pdf_options = slides.export.PdfOptions()
pdf_options.password = "password"
pdf_options.access_permissions = slides.export.PdfAccessPermissions.PRINT_DOCUMENT | slides.export.PdfAccessPermissions.HIGH_QUALITY_PRINT
with slides.Presentation("PowerPoint.pptx") as presentation:
presentation.save("PPTX-to-PDF.pdf", slides.export.SaveFormat.PDF, pdf_options)
معالجة الخطوط دون نوع خط عريض مخصص
يمكن للعرض تطبيق تنسيق عريض للنص حتى عندما لا يحتوي الخط على نوع عريض مخصص. لا يزال النص يظهر عريضًا عبر synthetic bolding، الذي يُثخّن الحروف العادية اصطناعيًا. عندما يبدو هذا النص ثقيلًا جدًا أو يختلف عن المظهر المقصود في PDF، جرّب ضبط PdfOptions.rasterize_unsupported_font_styles إلى True. هذا الخيار يُظهر النص المتأثر كصورة نقطية أثناء تصدير PDF ويمكن أن يحسّن مظهره لبعض الخطوط. قيمته الافتراضية هي False.
العرض النموذجي يحتوي على صندوقي نص: أحدهما بنص عادي والآخر بنص عريض يُطبق على نفس الخط الذي لا يمتلك نوعًا عريضًا مخصصًا. المثال التالي يحمل العرض، يُفعّل تحويل الأنماط غير المدعومة إلى صورة نقطية، ويصدّره إلى PDF:
import aspose.slides as slides
pdf_options = slides.export.PdfOptions()
pdf_options.rasterize_unsupported_font_styles = True
with slides.Presentation("unsupported-bold.pptx") as presentation:
presentation.save("rasterized.pdf", slides.export.SaveFormat.PDF, pdf_options)
المعاينات التالية تُظهر النتيجة عند إيقاف وتمكين الخيار. في هذا المثال، النص العريض يملك خطوطًا أكثر سمكًا عندما يكون الخيار معطَّلًا. عند تمكينه، تصبح الخطوط أخف؛ النص العادي يظل بدون تغيير. قارن النتائج قبل اختيار الإعداد المناسب لعروضك.
الخيار معطل (False، الافتراضي) |
الخيار مفعّل (True) |
|---|---|
![]() |
![]() |
في هذا المثال، تمكين الخيار يحول النص العريض فقط إلى صورة نقطية: لا يمكن تحديده أو نسخه أو البحث فيه كنص دون OCR، وتظهر حدوده أكثر نعومة عند تكبير 800٪. يبقى النص العادي قابلًا للبحث. عندما يكون الخيار معطلًا، يبقى كلا النصين كنص.
هذا الخيار يحول النص المنسق كعريض عندما لا يحتوي الخط على نوع عريض مخصص. استبدال الخط بدلاً من ذلك يختار خطًا آخر عندما يكون الأصلي غير متوفر.
تحويل شرائح محددة في PowerPoint إلى PDF
المثال التالي يصدر الشريحتين 1 و 3 من عرض إلى PDF. أرقام الشرائح في هذا المصفوفة تبدأ من 1، ويجب أن يحتوي العرض المدخل على ثلاث شرائح على الأقل.
import aspose.slides as slides
with slides.Presentation("PowerPoint.pptx") as presentation:
slide_numbers = [1, 3]
presentation.save("PPTX-to-PDF.pdf", slide_numbers, slides.export.SaveFormat.PDF)
تحويل PowerPoint إلى PDF بحجم شريحة مخصص
المثال التالي ينسخ الشريحة الأولى من عرض إلى عرض جديد بحجم شريحة 612 × 792 نقطة (8.5 × 11 بوصة). يقوم بتكبير محتوى الشريحة ليناسب الحجم ويصدّر الشريحة الوحيدة إلى PDF.
import aspose.slides as slides
slide_width = 612
slide_height = 792
with slides.Presentation("SelectedSlides.pptx") as presentation:
with slides.Presentation() as resized_presentation:
resized_presentation.slide_size.set_size(slide_width, slide_height, slides.SlideSizeScaleType.ENSURE_FIT)
slide = presentation.slides[0]
resized_presentation.slides.insert_clone(0, slide)
# إزالة الشريحة الفارغة التي تم إنشاؤها مع العرض التقديمي الجديد.
resized_presentation.slides.remove_at(1)
resized_presentation.save("PDF_with_custom_slide_size.pdf", slides.export.SaveFormat.PDF)
تحويل PowerPoint إلى PDF في وضع ملاحظات الشريحة
المثال التالي يصدر عرضًا إلى PDF، حيث يتم وضع ملاحظات المتحدث لكل شريحة أسفل الشريحة. استخدم عرضًا يحتوي على ملاحظات المتحدث لرؤية النتيجة.
import aspose.slides as slides
pdf_options = slides.export.PdfOptions()
pdf_options.slides_layout_options = slides.export.NotesCommentsLayoutingOptions()
pdf_options.slides_layout_options.notes_position = slides.export.NotesPositions.BOTTOM_FULL
with slides.Presentation("NotesFile.pptx") as presentation:
presentation.save("Pdf_Notes_out.pdf", slides.export.SaveFormat.PDF, pdf_options)
معايير الوصول والامتثال للـ PDF
Aspose.Slides يسمح لك باستخدام إجراء تحويل يتوافق مع إرشادات الوصول إلى محتوى الويب (WCAG). يمكنك تصدير مستند PowerPoint إلى PDF باستخدام أي من معايير الامتثال التالية: PDF/A1a, PDF/A1b, و PDF/UA.
الكود Python التالي يوضح عملية تحويل PowerPoint إلى PDF ينتج فيها عدة ملفات PDF بناءً على معايير امتثال مختلفة:
import aspose.slides as slides
pres = slides.Presentation("pres.pptx")
options = slides.export.PdfOptions()
options.compliance = slides.export.PdfCompliance.PDF_A1A
pres.save("pres-a1a-compliance.pdf", slides.export.SaveFormat.PDF, options)
options.compliance = slides.export.PdfCompliance.PDF_A1B
pres.save("pres-a1b-compliance.pdf", slides.export.SaveFormat.PDF, options)
options.compliance = slides.export.PdfCompliance.PDF_UA
pres.save("pres-ua-compliance.pdf", slides.export.SaveFormat.PDF, options)
Note
دعم Aspose.Slides لعمليات تحويل PDF يتيح لك تحويل PDF إلى أكثر تنسيقات الملفات شيوعًا. يمكنك القيام بـ PDF إلى HTML، PDF إلى صورة، PDF إلى JPG، وPDF إلى PNG للتحويلات. تدعم أيضًا عمليات تحويل PDF إلى تنسيقات متخصصة—PDF إلى SVG، PDF إلى TIFF، وPDF إلى XML—.ملاحظة: عند التصدير إلى PDF/UA، يتعامل Aspose.Slides مع الرسومات المعقدة مثل SmartArt والرسوم البيانية والصيغ كشكل واحد. لا يتم الحفاظ على العناصر الفردية كمسارات منفصلة وقد تُصنَّف كعناصر فنية؛ يُقدَّم النص البديل فقط للشكل الكامل.
الأسئلة الشائعة
هل يمكن لـ Aspose.Slides for Python إزالة معلومات التطبيق من PDF؟
لا، Aspose.Slides for Python يضيف تلقائيًا معلومات API ورقم الإصدار إلى PDF الناتج. لا يمكن تعديل هذه المعلومات أو إزالتها.
كيف يمكنني تضمين شرائح معينة فقط في تحويل PDF؟
يمكنك تحديد مؤشرات الشرائح التي تريد تحويلها بتمرير مصفوفة من مواضع الشرائح إلى طريقة save.
هل يمكن حماية PDF بكلمة مرور أثناء التحويل؟
نعم، يمكنك تعيين كلمة مرور وتحديد أذونات الوصول باستخدام فئة PdfOptions قبل حفظ العرض كملف PDF.
هل يدعم Aspose.Slides تحويل PDF إلى صيغ أخرى؟
نعم، Aspose.Slides يدعم تحويل ملفات PDF إلى صيغ مثل HTML، صيغ الصور (JPG, PNG)، SVG، TIFF، وXML.
كيف يمكنني التأكد من أن PDF يتوافق مع معايير الوصول؟
اضبط خاصية compliance في فئة PdfOptions إلى معايير مثل PDF_A1A، PDF_A1B، أو PDF_UA لضمان الامتثال لإرشادات الوصول.
هل يمكنني تضمين الشرائح المخفية في ملف PDF الناتج؟
نعم، عن طريق ضبط خاصية show_hidden_slides في فئة PdfOptions إلى True، ستُضمّن الشرائح المخفية في PDF.
كيف أضبط جودة ودقة الصور أثناء التحويل؟
استخدم خاصيتي jpeg_quality وsufficient_resolution في فئة PdfOptions للتحكم في جودة ودقة الصور في PDF الناتج.
هل يتعامل Aspose.Slides مع استبدال الخطوط تلقائيًا؟
Aspose.Slides يكتشف استبدال الخطوط أثناء التحويل، ويمكنك معالجتها باستخدام خاصية warning_callback في SaveOptions (محدود حاليًا).

