تحويل PowerPoint إلى PDF في Node.js عبر .NET
نظرة عامة
Aspose.Slides for Node.js via .NET يحول عروض PowerPoint وOpenDocument إلى PDF دون الحاجة إلى Microsoft PowerPoint. كل شريحة مرئية تصبح صفحة PDF واحدة بحجم الشريحة نفسه، ويظل النص قابلًا للتحديد والبحث. تُظهر هذه المقالة التحويل الافتراضي وتحويلًا إلى PDF/A باستخدام PdfOptions.
الأمثلة تتوقع وجود عرض تقديمي باسم sample.pptx في مجلد المشروع الذي قمت بإعداده في Installation. يمكن استخدام أي عرض PowerPoint. احفظ كل مثال كملف .js في مجلد المشروع وشغله من ذلك المجلد باستخدام node.
Note
Aspose.Slides for Node.js via .NET لا يمتلك مرجع API خاص به. فهو يعكس API الخاص بـ Aspose.Slides for .NET بأسماء camelCase، لذا روابط API في هذه المقالة تُوجه إلى الفئات والأعضاء المقابلة في Aspose.Slides for .NET API reference.تحويل عرض تقديمي إلى PDF
لتحويل عرض تقديمي إلى PDF، اتبع الخطوات التالية:
- افتح العرض التقديمي بتمرير مساره إلى المُنشئ Presentation. نفس الكود يعمل مع ملفات PPTX وPPT وODP.
- استدعِ طريقة save مع مسار الإخراج و
SaveFormat.Pdf. - استدعِ
disposeداخل كتلةfinallyلتحرير موارد .NET التي تدعم العرض التقديمي.
const { Presentation, SaveFormat } = require("aspose.slides.via.net");
const presentation = new Presentation("sample.pptx");
try {
presentation.save("sample.pdf", SaveFormat.Pdf);
console.log("Saved sample.pdf");
} finally {
presentation.dispose();
}
النص البرمجي يكتب sample.pdf إلى مجلد المشروع. يستخدم التحويل الإعدادات الافتراضية: كل شريحة غير مخفية تصبح صفحة، وفق ترتيب الشرائح. بدون ترخيص، تُظهر كل صفحة علامة مائية لتقييم الترخيص؛ راجع Licensing.
تحويل عرض تقديمي إلى PDF/A
للتحكم في المخرجات، مرّر كائن PdfOptions كالمعامل الثالث في save. المثال التالي يضبط الخاصية compliance إلى PdfCompliance.PdfA2b، مما يُنتج ملف PDF/A-2b. PDF/A هو المعيار ISO للأرشفة طويلة الأمد: من بين قواعد أخرى، يتطلب تضمين كل خط يستخدمه المستند داخل الملف.
const { Presentation, SaveFormat, PdfOptions, PdfCompliance } = require("aspose.slides.via.net");
const pdfOptions = new PdfOptions();
pdfOptions.compliance = PdfCompliance.PdfA2b;
const presentation = new Presentation("sample.pptx");
try {
presentation.save("sample-pdfa.pdf", SaveFormat.Pdf, pdfOptions);
console.log("Saved sample-pdfa.pdf");
} finally {
presentation.dispose();
}
النص البرمجي يكتب sample-pdfa.pdf بنفس الصفحات التي ينتجها التحويل الافتراضي. لتأكيد أن الملف يطابق المعيار، افحصه باستخدام أداة تحقق PDF/A مثل veraPDF. قيم أخرى من PdfCompliance تختار معايير أخرى، مثل PdfA1b أو PdfA2a أو PdfUa لإمكانية الوصول.
FAQ
كيف يمكنني تضمين الشرائح المخفية في PDF؟
الشرائح المخفية تُتخطى بشكل افتراضي. اضبط خاصية showHiddenSlides لـ PdfOptions إلى true ومرّر الخيارات إلى save.
هل يمكنني حماية PDF بكلمة مرور؟
نعم. اضبط خاصية password لـ PdfOptions قبل استدعاء save. ثم يطلب قارئ PDF كلمة المرور قبل فتح الملف.
هل يمكنني تحويل بعض الشرائح فقط؟
نعم. مرّر مصفوفة من مواضع الشرائح كمُعامل رابع في save. المواضع تبدأ من 1، ويمكن أن يكون المُعامل الثالث null إذا لم تحتاج إلى خيارات: presentation.save("selected.pdf", SaveFormat.Pdf, null, [1, 3]) يكتب PDF يحتوي على الشريحة الأولى والثالثة.
لماذا يبدو النص مختلفًا عند التحويل على لينكس؟
Aspose.Slides يمكنه فقط استخدام الخطوط المثبتة على الجهاز الذي يُجري التحويل. عندما يستخدم العرض تقديمي خطًا غير موجود، مثل Calibri على خادم لينكس شائع، يستخدم Aspose.Slides خطًا مثبتًا بدلاً منه، مما قد يغيّر مظهر النص ومكان فواصل الأسطر. قم بتثبيت الخطوط التي تستخدمها عروضك لت obten نفس النتيجة كما على ويندوز.
هل يمكنني الحصول على PDF كـ Buffer بدلاً من ملف؟
نعم. presentation.saveToBuffer(SaveFormat.Pdf) تُعيد PDF ككائن Buffer في Node.js، وهو مناسب عندما ترسل النتيجة في استجابة HTTP. كما يقبل PdfOptions كمُعامل ثاني.