כיצד ליצור מצגות ב‑.NET
Aspose.Slides FOSS for .NET מאפשר לך ליצור מצגות PowerPoint באופן מלא ב‑C# ללא תלות ב‑Microsoft Office. מדריך זה מציג כיצד ליצור מצגת חדשה, להוסיף שקפים וצורות, לעצב טקסט ולשמור את התוצאה.
מדריך שלב אחר שלב
שלב 1: התקנת החבילה
התקן את Aspose.Slides FOSS מ‑NuGet. נדרש .NET 9.0 או גרסה מאוחרת יותר.
dotnet add package Aspose.Slides.Fossאמת את ההתקנה:
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.
שלב 3: צור מצגת
השתמש בnew Presentation() עם הצהרת 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 עם הצהרת using. המחלקה מיישמת IDisposable והמשאבים לא ישוחררו כראוי ללא זאת.
שלב 4: גישה לשקופית
השקף הראשון נמצא באינדקס 0. מצגת ריקה מכילה בדיוק שקף אחד.
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);שלב 5: הוסף צורה
השתמש בslide.Shapes.AddAutoShape() כדי להוסיף AutoShape. הפרמטרים הם (shapeType, x, y, width, height) כולם בנקודות (1 נקודה = 1/72 אינץ’; שקופית סטנדרטית היא 720 x 540 pt).
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 או תמונות אינו זמין בגרסה זו.