الأسئلة المتكررة
الأسئلة المتكررة
كيف أقوم بتثبيت Aspose.Slides FOSS؟
قم بالتثبيت من NuGet باستخدام .NET CLI. يتطلب .NET 9.0 أو أحدث.
dotnet add package Aspose.Slides.Fossتحقق من التثبيت:
using Aspose.Slides.Foss;
using var prs = new Presentation();
Console.WriteLine($"Slides: {prs.Slides.Count}");لا يلزم وجود Microsoft Office أو أي بيئة تشغيل نظام أخرى.
لماذا يجب عليّ استخدام using var prs = new Presentation();?
الفئة Presentation تنفّذ IDisposable وتدير موارد XML الداخلية. بدون بيان using، لا يتم تحرير تلك الموارد عندما يخرج كائن Presentation من النطاق، مما قد يسبب تسرب الموارد أو قفل الملفات.
دائمًا اتبع هذا النمط:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation("input.pptx");
// work here
prs.Save("output.pptx", SaveFormat.Pptx);ما هي صيغ الملفات التي يمكنني الحفظ إليها؟
تُعرّف تعداد SaveFormat الثوابت للعديد من الصيغ — Pptx، Pdf، Html، Svg، Jpeg، Png، وغيرها — لتوافق API مع النسخة التجارية. أثناء وقت التشغيل في هذه النسخة المفتوحة المصدر، جميع التحميلات الزائدة Save() تتجاهل معامل الصيغة وتكتب دائمًا مخرجات PPTX. تمرير SaveFormat.Pdf يُترجم بشكل صحيح لكنه ينتج ملف .pptx، وليس .pdf.
using Aspose.Slides.Foss.Export;
prs.Save("output.pptx", SaveFormat.Pptx);التصدير إلى صيغ غير PPTX غير متاح وظيفيًا في هذا الإصدار. استخدم SaveFormat.Pptx لجميع عمليات الحفظ.
هل يمكنني فتح ملفات .ppt (PowerPoint 97-2003 القديم)؟
المكتبة تدعم أساسًا .pptx (Office Open XML). يقبل مُنشئ Presentation مسار ملف .ppt وسيكتشف التنسيق، لكن تحليل ملفات .ppt الثنائية بشكل موثوق غير مضمون وليس حالة استخدام مدعومة في هذا الإصدار. استخدم ملفات .pptx لجميع سيناريوهات الإنتاج.
كيف يمكنني الوصول إلى الشرائح؟
الشرائح هي مجموعة ذات فهرس يبدأ من الصفر يمكن الوصول إليها عبر prs.Slides:
var firstSlide = prs.Slides[0];
int slideCount = prs.Slides.Count;كيف أضيف شريحة ثانية؟
استخدم prs.Slides.AddEmptySlide() مع تخطيط:
using var prs = new Presentation();
var layout = prs.LayoutSlides[0];
prs.Slides.AddEmptySlide(layout);
var slide2 = prs.Slides[1];
prs.Save("two-slides.pptx", SaveFormat.Pptx);كيف يمكنني تعيين لون خلفية الشريحة؟
ملء الخلفية غير متاح في هذا الإصدار.
كيف أستخدم NullableBool؟
NullableBool هو تعداد ثلاثي الحالة يُستخدم لخصائص التنسيق. استخدم NullableBool.True (ليس true الخاص بـ C#) للخط العريض، المائل، والخصائص المشابهة:
using Aspose.Slides.Foss;
fmt.FontBold = NullableBool.True;
fmt.FontItalic = NullableBool.False;
fmt.FontUnderline = TextUnderlineType.Single;لماذا لا يؤثر تعيين لون النص؟
يجب عليك أيضًا تعيين FillType = FillType.Solid قبل تعيين اللون:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 200, 0, 0);هل يمكنني استخدام المخططات أو SmartArt؟
لا. المخططات، SmartArt، كائنات OLE، الرسوم المتحركة، الانتقالات، الروابط التشعبية، ماكرو VBA، والتوقيعات الرقمية غير مُنفذة في هذا الإصدار.
هل تدعم المكتبة .NET 8؟
لا. .NET 9.0 أو أحدث مطلوب.
هل هذه المكتبة آمنة للخيوط؟
كل كائن Presentation مستقل. إنشاء واستخدام نسخ Presentation منفصلة من خيوط منفصلة آمن طالما أنك لا تشارك كائن Presentation واحد عبر الخيوط دون قفل خارجي.
كيف يمكنني تضمين صورة؟
اقرأ بايتات الصورة وأضفها إلى prs.Images، ثم أنشئ PictureFrame:
byte[] imageData = File.ReadAllBytes("logo.png");
var image = prs.Images.AddImage(imageData);
slide.Shapes.AddPictureFrame(ShapeType.Rectangle, 50, 50, 200, 150, image);