كيفية إنشاء العروض التقديمية في .NET
Aspose.Slides FOSS for .NET lets you create PowerPoint presentations entirely in C# with no dependency on Microsoft Office. This guide shows how to create a new presentation, add slides and shapes, format text, and save the result.
خطوة بخطوة دليل
الخطوة 1: قم بتثبيت الحزمة
تثبيت Aspose.Slides FOSS من NuGet .NET 9.0 أو أحدث مطلوب.
aspose-slides-foss/slides is not yet published — build from source until it ships. See the project README for build instructions.
تحقق من التثبيت :
using Aspose.Slides.Foss;
using var prs = new Presentation();
Console.WriteLine("Aspose.Slides FOSS ready");لا تحتاج إلى أي حزم نظام أخرى.
الخطوة 2: استيراد المساحات المطلوبة
إضافة المساحات الاسمية اللازمة لإنشاء وتخزين العروض التقديمية.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;كل نوع من الحيوانات المنوية يعيش في Aspose.Slides.Foss.ShapeType.جميع أنواع التصميم (FillType, NullableBool(و) أن يكون أيضا في Aspose.Slides.Foss.
الخطوة الثالثة: إعداد عرض
استخدام new Presentation() مع A using يبدأ عرض جديد مع شاشة واحدة.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
Console.WriteLine($"Slides in new presentation: {prs.Slides.Count}");
// work with prs
prs.Save("output.pptx", SaveFormat.Pptx);أهمية : دائما استخدام Presentation مع A using المقالة السابقةالسابق: تطبيقات الفصول الدراسية IDisposable لن يتم إطلاق الموارد بشكل صحيح بدونها.
الخطوة 4: الوصول إلى الشرائح
أول شريط هو في المؤشر 0.A white presentation has exactly one slide.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0]; // zero-based index
Console.WriteLine($"Slide at index 0: {slide}");
prs.Save("output.pptx", SaveFormat.Pptx);الخطوة الخامسة: إضافة شكل
استخدام slide.Shapes.AddAutoShape() إضافة AutoShape.المعايير هي (shapeType, x, y, width, height) كلها في النقاط (1 نقطة = 1/72 بوصة؛ الشريط القياسي هو 720 × 540 بيتر).
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Rectangle at (50, 50) with 400 wide and 120 tall
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 400, 120);
// Attach a text frame
shape.AddTextFrame("Hello from Aspose.Slides FOSS!");
prs.Save("with-shape.pptx", SaveFormat.Pptx);الخطوة 6: حفظ العرض التقديمي
مكالمة prs.Save(path, SaveFormat.Pptx) قبل أن يتم إزالة الكائن. PPTX هو تنسيق النتيجة الوحيد المدعوم.
prs.Save("result.pptx", SaveFormat.Pptx);يتم كتابة الملف بشكل ذاتي؛ إذا حدث خطأ قبل هذا المكالمة، لا يتم إنشاء ملف الناتج.
نموذج عمل كامل
يخلق البرنامج التالي عرضًا مزدوجًّا مع شكل عنوان على الشريط الأول وطاولة على الثانية.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
// --- Slide 1: title shape ---
var slide1 = prs.Slides[0];
var title = slide1.Shapes.AddAutoShape(ShapeType.Rectangle, 40, 40, 640, 80);
var tf = title.AddTextFrame("Q1 Results: Executive Summary");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 32;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
// --- Slide 2: table ---
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
var slide2 = prs.Slides[1];
var table = slide2.Shapes.AddTable(40, 40,
new double[] { 200.0, 120.0, 120.0 },
new double[] { 40.0, 40.0, 40.0 });
string[] headers = { "Region", "Revenue", "Growth" };
string[][] data = {
new[] { "North", "$1.2M", "+8%" },
new[] { "South", "$0.9M", "+4%" },
};
for (int col = 0; col < headers.Length; col++)
table.Rows[0][col].TextFrame.Text = headers[col];
for (int row = 0; row < data.Length; row++)
for (int col = 0; col < data[row].Length; col++)
table.Rows[row + 1][col].TextFrame.Text = data[row][col];
prs.Save("q1-results.pptx", SaveFormat.Pptx);
Console.WriteLine("Saved q1-results.pptx");مشكلات و تصحيحات مشتركة
ObjectDisposedException
أنت تستخدمها Presentation الموضوع بعد أن using كل العمل يجب أن يحدث قبل تم إزالة الكائن.
خطأ في اسم المساحة المفقودة ShapeType
تأكد من أن لديك using Aspose.Slides.Foss; في أعلى ملفك. ShapeType, NullableBool, FillType,و غيرها من الأقلام موجودة في هذا الاسم.
SaveFormat غيرها من Pptx
من خلال أي SaveFormat قيمة أخرى غير SaveFormat.Pptx لا يلقي استثناء. يتم تجاهل معيار النموذج بهدوء ويتم إنتاج PPTX دائما. SaveFormat.Pptx لتكون واضحة.
الأسئلة المتكررة
ما هو حجم الشرائح الافتراضية؟?
و جديد Presentation() إنشاء الشرائح في الحجم القياسي 10 × 7.5 بوصة (720 × 540 نقطة) تغيير حجم الشريط لا يدعم بعد في هذا الإصدار.
هل يمكنني إضافة أكثر من شريط واحد؟?
نعم، اتصل بنا prs.Slides.AddEmptySlide(prs.LayoutSlides[0]) إرفاق شريط خفيف والوصول إليه بواسطة المؤشر:
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
var slide2 = prs.Slides[1];هل يمكنني فتح ملف موجود وإضافة الشرائح؟?
نعم :
using var prs = new Presentation("existing.pptx");
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
prs.Save("existing.pptx", SaveFormat.Pptx);ما هي النماذج التي يمكنني حفظها؟?
فقط SaveFormat.Pptx يتم دعمها.الصادرات إلى PDF أو HTML أو SVG أو الصور غير متوفرة في هذا الإصدار.