مقدمة
Aspose.Slides FOSS for .NET provides a comprehensive set of classes for managing PowerPoint presentations entirely in C#. The library lets you create new .pptx ملفات من التخريب، تحميل تلك الموجودة، والتلاعب الشرائح والشكلات، وتخزين النتيجة مرة أخرى إلى القرص - كل ذلك دون تثبيت Microsoft Office أو أي إدمان خارجي.
وَالْمُتَّقِينَ Aspose.Slides.Foss ويهدف حزمة NuGet إلى .NET 9.0 وتعمل على نفس النحو على حاويات Windows و macOS و Linux و Docker. يتم إصدارها تحت ترخيص MIT ، لذلك يمكنك استخدامه في المشاريع التجارية والمفتوحة المصدر دون أي قيود.
هذا المنشور يمر من خلال القدرات الأساسية لإدارة العرض التقديمي: العمل مع الشرائح، وبناء الهرمات شكل، وتنظيم النص، وإدارة الجداول، وتوفير PPTX.
ما هو مدرجة
إنشاء وتحميل العروض التقديمية
وَالْمُتَّقِينَ Presentation الفئة هي نقطة الدخول لكل عمل.يمكنك إنشاء عرض فارغ، تحميل واحد من مسار الملف، أو القراءة من تدفق. IDisposable,ثم يغطيها في أ using وتضمن البيان أن الموارد يتم إطلاقها بشكل صحيح.
// Create a brand-new, empty presentation
using var pres = new Presentation();
// Load an existing file
using var existing = new Presentation("report.pptx");
وَالْمُتَّقِينَ Presentation يظهر الكائن الهرم الكامل من خلال خصائص مثل: Slides, Masters, LayoutSlides, Sections, CommentAuthors, Images,و ، و NotesSize.
العمل مع Slides
وَالْمُتَّقِينَ SlideCollection عاد من خلال Presentation.Slides يدعم إضافة، وتلون، وإدراج، إعادة ترتيب، والقضاء على الشرائح.يمكنك التلين الشريط داخل نفس العرض أو عبر العروض أثناء الحفاظ على أو إصلاح التصاميم.
using var pres = new Presentation();
// The default presentation contains one blank slide
var firstSlide = pres.Slides[0];
// Clone the first slide and append it
pres.Slides.AddClone(firstSlide);
// Insert a clone at a specific position
pres.Slides.InsertClone(1, firstSlide);
// Remove a slide by index
pres.Slides.RemoveAt(2);
// Total slide count
int count = pres.Slides.Count;
كل واحد منهم Slide المعرضات SlideNumber, Hidden, LayoutSlide, NotesSlideManager,و ، و Name.يمكنك إدراج المجموعة مع foreach أو تحويلها إلى صفقة مع ToArray().
أشكال و أوتوماتيك
كل شريحة تحتوي على ShapeCollection من خلال الوصول إلى Slide.Shapes.يقدم المجموعة أساليب المصنع لأكثر أنواع الشكل شيوعا.
using var pres = new Presentation();
var slide = pres.Slides[0];
// Add a rectangle AutoShape
var rect = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 50, 300, 150);
// Add a connector
var connector = slide.Shapes.AddConnector(
ShapeType.BentConnector3, 100, 200, 200, 50);
// Reorder a shape to bring it forward
slide.Shapes.Reorder(0, rect);
// Remove all shapes
slide.Shapes.Clear();
وَالْمُتَّقِينَ AddAutoShape و InsertAutoShape طريقة قبول A ShapeType قيمة enum بالإضافة إلى موقف وحجم الإحداثيات. AddConnector, InsertConnector, AddPictureFrame,و ، و InsertPictureFrame اتبع نفس النموذج.
النص: الفقرات والجزءات
في عرض واحد يعيش داخل TextFrame,التي تحتوي على A ParagraphCollection.كل واحد منهم Paragraph يحتفظ بـ PortionCollection من Portion الأشياء التي تمثل النص الفردي تعمل مع تنسيق مستقل.
using var pres = new Presentation();
var slide = pres.Slides[0];
var shape = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 50, 400, 200);
// Access the shape's text frame
var tf = shape.TextFrame;
// Read or set the full text
tf.Text = "Hello, presentation world!";
// Work with individual paragraphs and portions
var para = new Paragraph();
var portion = new Portion("Formatted run");
para.Portions.Add(portion);
tf.Paragraphs.Add(para);
كل واحد منهم Portion لديه أ PortionFormat الممتلكات للتحكم في الخط، الحجم، الجوع/الإيطالي، اللون، القاعدة، وغيرها من الصفات على مستوى الشخصية. ParagraphFormat التحكم في التكيف، وأسلوب الرصاص، وتخفيف المساحة، والانحناء.
طاولات
يتم إضافة اللوحات من خلال ShapeCollection.AddTable, الذي يقبل عرض الأعمدة وارتفاع الصفوف مثل الأقواس. Table يتيح الكائن الوصول إلى Rows, Columns,و الفردية Cell الأجسام .
using var pres = new Presentation();
var slide = pres.Slides[0];
double[] colWidths = { 150, 150, 150 };
double[] rowHeights = { 40, 40, 40 };
var table = slide.Shapes.AddTable(
50, 50, colWidths, rowHeights);
// Set text in a cell
table.Rows[0][0].TextFrame.Text = "Header 1";
table.Rows[0][1].TextFrame.Text = "Header 2";
table.Rows[0][2].TextFrame.Text = "Header 3";
// Merge cells
table.MergeCells(table.Rows[1][0], table.Rows[1][2], false);
// Style presets
table.StylePreset = TableStylePreset.MediumStyle2Accent1;
توفير العروض التقديمية
وَالْمُتَّقِينَ Presentation.Save طريقة كتابة المستند إلى ملف أو تدفق. SaveFormat يحدد enum تنسيق النتيجة. PPTX هو تنسق الإنتاج الرئيسي المدعوم.
using var pres = new Presentation();
// ... build slides ...
// Save to a file
pres.Save("output.pptx", SaveFormat.Pptx);
// Save to a stream
using var ms = new MemoryStream();
pres.Save(ms, SaveFormat.Pptx);
// Save specific slides by index
pres.Save("subset.pptx", new[] { 1, 3 }, SaveFormat.Pptx);
يمكنك أيضًا إجراء SaveOptions - إعطاء السيطرة الإضافية على الإنتاج.
بدء سريع
قم بتثبيت الحزمة من خلال .NET CLI:
dotnet add package aspose.slides.foss
ثم قم بإنشاء وتخزين عرض صغير:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
// 1. Create a new presentation
using var pres = new Presentation();
// 2. Get the default slide
var slide = pres.Slides[0];
// 3. Add a title shape
var title = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 30, 600, 60);
title.TextFrame.Text = "Quarterly Report";
// 4. Add a content shape
var body = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 120, 600, 300);
var para = new Paragraph();
para.Portions.Add(new Portion("Revenue grew 12% year-over-year."));
body.TextFrame.Paragraphs.Add(para);
// 5. Save as PPTX
pres.Save("quarterly-report.pptx", SaveFormat.Pptx);
تنسيقات مدعومة
| شكل | التمديد | قراءة | كتب |
|---|---|---|---|
| PPTX | .pptx | نعم | نعم |
| PPSX | .ppsx | لا | المخطط |
| PPTM | .pptm | لا | المخطط |
| POTX | .بوتكس | لا | المخطط |
| ODP | .أودب | لا | المخطط |
| FODP | .فودب | لا | المخطط |
ملاحظة : في الوقت الحاضر يتم تنفيذ فقط تصدير PPTX. قيمة تنسيق أخرى موجودة في
SaveFormatأندية متوافقة مع التقدم ولكنها غير وظيفية بعد.Save()الطريقة دائما تولد PPTX الناتج بغض النظر عن معيار الشكل..pptلا يتم دعم النموذج الثنائي.
المصدر المفتوح و الترخيص
Aspose.Slides FOSS for .NET is released under the MIT license. The full source code is available on GitHub.يمكنك استخدامه في المشاريع التجارية والمفتوحة المصدر، وتعديل الرمز، وإعادة توزيعه دون قيود.لا مطلوب مفتاح API أو ملف الترخيص أو التسجيل.
بدءاً من
- دليل المطور: docs.aspose.org/slides / شبكة الإنترنت - الدروس والمستندات المفهومة.
- قاعدة المعرفة: kb.aspose.org/slides / شبكة الإنترنت - FAQs وكيفية التعليق على المقالات.
- إشارة API: reference.aspose.org/slides/net/ تفاصيل - المراجعة الكاملة للطبقة والطريقة.