إنشاء عروض PowerPoint تقديمية C#

تتيح لك عروض MS PowerPoint التقديمية إنشاء عروض شرائح تحتوي على نصوص وصور ومخططات ورسوم متحركة وعناصر أخرى. تتيح لك خيارات التنسيق الإضافية المتنوعة جعل عروضك التقديمية أكثر جاذبية. في هذا المنشور ، ستتعرف على كيفية إنشاء مثل هذه العروض التقديمية برمجيًا. سوف تتعلم كيفية إنشاء عروض PPTX التقديمية التي تحتوي على نصوص وجداول وصور ومخططات باستخدام C#.

C# PowerPoint API - تنزيل مجاني

Aspose.Slides for .NET هي واجهة برمجة تطبيقات لمعالجة العروض التقديمية تتيح لك إنشاء مستندات PowerPoint ومعالجتها من داخل تطبيقات .NET. توفر واجهة برمجة التطبيقات (API) تقريبًا جميع الميزات الممكنة المطلوبة لتنفيذ ميزات أتمتة PowerPoint الأساسية والمتقدمة. يمكنك إما تنزيل API أو تثبيته عبر NuGet.

Install-Package Aspose.Slides.NET

إنشاء عرض PowerPoint تقديمي في C#

لنبدأ بإنشاء عرض PowerPoint تقديمي فارغ باستخدام Aspose.Slides for .NET. فيما يلي خطوات للقيام بذلك.

يُظهر نموذج التعليمات البرمجية التالي كيفية إنشاء عرض تقديمي لـ PowerPoint في C#.

// إنشاء كائن عرض تقديمي يمثل ملف عرض تقديمي
using (Presentation presentation = new Presentation())
{
    // احصل على الشريحة الأولى
    ISlide slide = presentation.Slides[0];

    // إضافة محتوى إلى الشريحة ...
    
    // حفظ العرض التقديمي
    presentation.Save("NewPresentation.pptx", SaveFormat.Pptx);
}

افتح عرض PowerPoint تقديمي موجود في C#

لا تحتاج إلى بذل جهود إضافية لفتح عرض PowerPoint تقديمي موجود. ما عليك سوى توفير مسار ملف PPTX لمنشئ فئة العرض التقديمي وبذلك تكون قد انتهيت. يُظهر نموذج التعليمات البرمجية التالي كيفية فتح عرض تقديمي PPTX موجود.

// فتح ملف العرض عن طريق تمرير مسار الملف إلى مُنشئ فئة العرض التقديمي
Presentation pres = new Presentation("OpenPresentation.pptx");

// طباعة العدد الإجمالي للشرائح في العرض التقديمي
System.Console.WriteLine(pres.Slides.Count.ToString());

إضافة شريحة إلى العرض التقديمي في C#

بمجرد إنشاء العرض التقديمي ، يمكنك البدء في إضافة الشرائح إليه. فيما يلي خطوات إضافة شريحة في العرض التقديمي باستخدام Aspose.Slides for .NET.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة شريحة في عرض تقديمي لـ PowerPoint باستخدام C#.

// إنشاء فئة العرض التقديمي التي تمثل ملف العرض التقديمي
using (Presentation pres = new Presentation())
{
    // إنشاء فئة SlideCollection
    ISlideCollection slds = pres.Slides;

   for (int i = 0; i < pres.LayoutSlides.Count; i++)
    {
        // أضف شريحة فارغة إلى مجموعة الشرائح
        slds.AddEmptySlide(pres.LayoutSlides[i]);

    }

    // احفظ ملف PPTX على القرص
    pres.Save("EmptySlide_out.pptx", SaveFormat.Pptx);

}

إدراج نص في شريحة باستخدام C#

الآن يمكننا إضافة محتوى إلى الشرائح في عرض PowerPoint التقديمي. لنقم أولاً بإضافة جزء من النص إلى الشريحة باتباع الخطوات التالية.

  • أنشئ عرضًا تقديميًا جديدًا باستخدام فئة Presentation.
  • احصل على مرجع الشريحة في العرض التقديمي.
  • أضف IAutoShape مع ShapeType كمستطيل في موضع محدد من الشريحة.
  • احصل على مرجع كائن IAutoShape المضاف حديثًا.
  • أضف TextFrame إلى الشكل التلقائي الذي يحتوي على النص الافتراضي.
  • احفظ العرض التقديمي كملف PPTX.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة نص إلى شريحة في عرض تقديمي باستخدام C#.

// مثيل PresentationEx // مثيل PresentationEx
using (Presentation pres = new Presentation())
{
    // احصل على الشريحة الأولى
    ISlide sld = pres.Slides[0];

    // قم بإضافة شكل تلقائي من نوع المستطيل
    IAutoShape ashp = sld.Shapes.AddAutoShape(ShapeType.Rectangle, 150, 75, 150, 50);

    // أضف TextFrame إلى المستطيل
    ashp.AddTextFrame(" ");

    // الوصول إلى إطار النص
    ITextFrame txtFrame = ashp.TextFrame;

    // قم بإنشاء كائن فقرة لإطار النص
    IParagraph para = txtFrame.Paragraphs[0];

    // إنشاء كائن جزء للفقرة
    IPortion portion = para.Portions[0];

    // نص مجموعة
    portion.Text = "Aspose TextBox";

    // احفظ العرض التقديمي على القرص
    pres.Save("presentation.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
}

إنشاء جدول في عرض تقديمي باستخدام C#

يوفر Aspose.Slides for .NET طريقة سهلة لإنشاء جدول في مستند العرض. فيما يلي الخطوات لذلك.

  • قم بإنشاء مثيل لفئة Presentation.
  • احصل على مرجع للشريحة باستخدام الفهرس الخاص بها.
  • حدد مصفوفات من الأعمدة بعرض وصفوف بارتفاع.
  • أضف جدولاً إلى الشريحة باستخدام طريقة Slide.Shapes.AddTable() المكشوفة بواسطة كائن IShapes واحصل على المرجع للجدول في مثيل ITable.
  • كرر خلال كل خلية لتطبيق التنسيق.
  • أضف نصًا إلى الخلايا باستخدام خاصية Table.Rows [] []. TextFrame.Text.
  • احفظ العرض التقديمي كملف PPTX.

يُظهر نموذج التعليمات البرمجية التالي كيفية إنشاء جدول في شريحة من عرض PowerPoint التقديمي.

// إنشاء فئة العرض التقديمي التي تمثل ملف PPTX
Presentation pres = new Presentation();

// الوصول إلى الشريحة الأولى
ISlide sld = pres.Slides[0];

// تحديد الأعمدة ذات العرض والصفوف ذات الارتفاعات
double[] dblCols = { 50, 50, 50 };
double[] dblRows = { 50, 30, 30, 30, 30 };

// أضف شكل الجدول إلى الشريحة
ITable tbl = sld.Shapes.AddTable(100, 50, dblCols, dblRows);

// قم بتعيين تنسيق الحدود لكل خلية
for (int row = 0; row < tbl.Rows.Count; row++)
{
	for (int cell = 0; cell < tbl.Rows[row].Count; cell++)
	{
		tbl.Rows[row][cell].CellFormat.BorderTop.FillFormat.FillType = FillType.Solid;
		tbl.Rows[row][cell].CellFormat.BorderTop.FillFormat.SolidFillColor.Color = Color.Red;
		tbl.Rows[row][cell].CellFormat.BorderTop.Width = 5;

		tbl.Rows[row][cell].CellFormat.BorderBottom.FillFormat.FillType = (FillType.Solid);
		tbl.Rows[row][cell].CellFormat.BorderBottom.FillFormat.SolidFillColor.Color= Color.Red;
		tbl.Rows[row][cell].CellFormat.BorderBottom.Width =5;

		tbl.Rows[row][cell].CellFormat.BorderLeft.FillFormat.FillType = FillType.Solid;
		tbl.Rows[row][cell].CellFormat.BorderLeft.FillFormat.SolidFillColor.Color =Color.Red;
		tbl.Rows[row][cell].CellFormat.BorderLeft.Width = 5;

		tbl.Rows[row][cell].CellFormat.BorderRight.FillFormat.FillType = FillType.Solid;
		tbl.Rows[row][cell].CellFormat.BorderRight.FillFormat.SolidFillColor.Color = Color.Red;
		tbl.Rows[row][cell].CellFormat.BorderRight.Width = 5;
	}
}

// دمج الخلايا 1 و 2 من الصف 1
tbl.MergeCells(tbl.Rows[0][0], tbl.Rows[1][1], false);

// أضف نصًا إلى الخلية المدمجة
tbl.Rows[0][0].TextFrame.Text = "Merged Cells";

// احفظ PPTX على القرص
pres.Save("table.pptx", SaveFormat.Pptx);

إنشاء مخطط في عرض تقديمي باستخدام C#

فيما يلي خطوات إضافة مخطط في عرض PowerPoint التقديمي باستخدام C#.

  • قم بإنشاء مثيل لفئة Presentation.
  • الحصول على مرجع شريحة بالفهرس.
  • أضف مخططًا بالنوع المطلوب باستخدام طريقة ISlide.Shapes.AddChart (ChartType ، Single ، Single ، Single).
  • أضف عنوان مخطط.
  • قم بالوصول إلى ورقة عمل بيانات المخطط.
  • امسح كل السلاسل والفئات الافتراضية.
  • أضف سلسلة وفئات جديدة.
  • أضف بيانات مخطط جديدة لسلسلة المخطط.
  • تعيين لون التعبئة لسلسلة المخطط.
  • أضف تسميات سلسلة المخططات.
  • احفظ العرض التقديمي كملف PPTX.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة مخطط في عرض تقديمي باستخدام C#.

// إنشاء فئة العرض التقديمي التي تمثل ملف PPTX
Presentation pres = new Presentation();

// الوصول إلى الشريحة الأولى
ISlide sld = pres.Slides[0];

// أضف مخططًا بالبيانات الافتراضية
IChart chart = sld.Shapes.AddChart(ChartType.ClusteredColumn, 0, 0, 500, 500);

// تعيين عنوان المخطط
// Chart.ChartTitle.TextFrameForOverriding.Text = "نموذج العنوان" ؛
chart.ChartTitle.AddTextFrameForOverriding("Sample Title");
chart.ChartTitle.TextFrameForOverriding.TextFrameFormat.CenterText = NullableBool.True;
chart.ChartTitle.Height = 20;
chart.HasTitle = true;

// قم بتعيين السلسلة الأولى إلى إظهار القيم
chart.ChartData.Series[0].Labels.DefaultDataLabelFormat.ShowValue = true;

// تحديد فهرس ورقة بيانات الرسم البياني
int defaultWorksheetIndex = 0;

// الحصول على ورقة عمل بيانات المخطط
IChartDataWorkbook fact = chart.ChartData.ChartDataWorkbook;

// حذف السلاسل والفئات الافتراضية التي تم إنشاؤها
chart.ChartData.Series.Clear();
chart.ChartData.Categories.Clear();
int s = chart.ChartData.Series.Count;
s = chart.ChartData.Categories.Count;

// مضيفا مسلسل جديد
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.Type);
chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.Type);

// اضافة فئات جديدة
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));

// خذ سلسلة المخططات الأولى
IChartSeries series = chart.ChartData.Series[0];

// يتم الآن ملء بيانات السلسلة

series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 1, 20));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 1, 50));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 1, 30));

// تحديد لون التعبئة للسلسلة
series.Format.Fill.FillType = FillType.Solid;
series.Format.Fill.SolidFillColor.Color = Color.Red;


// خذ سلسلة المخططات الثانية
series = chart.ChartData.Series[1];

// يتم الآن ملء بيانات السلسلة
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 2, 30));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 2, 10));
series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 2, 60));

// تحديد لون التعبئة للسلسلة
series.Format.Fill.FillType = FillType.Solid;
series.Format.Fill.SolidFillColor.Color = Color.Green;

// سيتم عرض التسمية الأولى اسم الفئة
IDataLabel lbl = series.DataPoints[0].Label;
lbl.DataLabelFormat.ShowCategoryName = true;

lbl = series.DataPoints[1].Label;
lbl.DataLabelFormat.ShowSeriesName = true;

// إظهار القيمة للتسمية الثالثة
lbl = series.DataPoints[2].Label;
lbl.DataLabelFormat.ShowValue = true;
lbl.DataLabelFormat.ShowSeriesName = true;
lbl.DataLabelFormat.Separator = "/";
            
// حفظ العرض مع الرسم البياني
pres.Save("AsposeChart_out.pptx", SaveFormat.Pptx);

تعرف على المزيد حول مخططات العرض هنا.

أضف صورة في العرض التقديمي

فيما يلي خطوات إضافة الصور في شريحة العرض التقديمي.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة صورة إلى عرض تقديمي في C#.

// إنشاء عرض تقديمي
using (var p = new Presentation())
{
	// اقرأ الصورة
	var svgContent = File.ReadAllText("image.svg");
	
	// إضافة صورة إلى مجموعة الصور
	var emfImage = p.Images.AddFromSvg(svgContent);
	
	// أضف الصورة إلى الشريحة
	p.Slides[0].Shapes.AddPictureFrame(ShapeType.Rectangle, 0, 0, emfImage.Width, emfImage.Height, emfImage);
	
	// حفظ العرض التقديمي
	p.Save("presentation.pptx", SaveFormat.Pptx);        
}

استنتاج

في هذه المقالة ، تعلمت كيفية إنشاء عروض PowerPoint التقديمية من البداية باستخدام C#. بالإضافة إلى ذلك ، لقد رأيت كيفية إضافة الشرائح والنصوص والجداول والصور والمخططات في عروض PPTX التقديمية الجديدة أو الحالية. يمكنك معرفة المزيد حول API باستخدام التوثيق.

أنظر أيضا

نصيحة: إلى جانب إنشاء الشرائح أو العروض التقديمية ، يوفر Aspose.Slides العديد من الميزات التي تتيح لك العمل مع العروض التقديمية. على سبيل المثال ، باستخدام واجهات برمجة التطبيقات الخاصة بها ، قامت Aspose بتطوير عارض مجاني على الإنترنت لعروض Microsoft PowerPoint التقديمية.