مقدمه
Aspose.Slides FOSS for .NET is now available on NuGet: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx فایلها بهصورت کامل در C#، بدون وابستگی به Microsoft Office یا هر زماناجرای مالکیتی.
این کتابخانه برای توسعهدهندگانی طراحی شده است که نیاز به تولید یا دستکاری فایلهای ارائه بهصورت برنامهنویسی دارند: خودکارسازی اسلایدها از دادهها، استخراج متن و متادیتا از فایلهای PPTX بارگذاریشده، ساخت خطوط لوله گزارشگیری مبتنی بر ارائه، یا ادغام ایجاد ارائه در برنامههای ASP.NET. زیرا Aspose.Slides.Foss نیاز به .NET 9.0 یا بالاتر دارد، بهصورت یکسان بر روی Windows، macOS، Linux و کانتینرهای Docker مستقر میشود.
ویژگیهای کلیدی
- پشتیبانی کامل دورگرد PPTX: باز کردن هر
.pptxفایل، محتویات آن را تغییر دهید و بدون از دست دادن بخشهای XML ناشناسی که کتابخانه هنوز درک نکرده است، دوباره ذخیره کنید. - مدیریت اسلایدها:با استفاده از اسلایدها را اضافه، حذف و مرور کنید
prs.Slides; ارائه پس از یک اسلاید خالی شروع میشودnew Presentation(). - AutoShapes، جداول و Connectors: اشکال را از طریق
slide.Shapes.AddAutoShape(), دادههای جدولی از طریقslide.Shapes.AddTable(), و کانکتورهای بصری بین اشکال از طریقslide.Shapes.AddConnector(). - قالببندی متن غنی: متنی را در سطح کاراکتر قالببندی کنید با
PortionFormat: اندازه قلم، ضخیم، ایتالیک، زیرخط و رنگ ARGB از طریقFillType.Solid: وColorFormat. - : انواع پر: اعمال
FillType.Solid,Gradient,Pattern,: ، یاPicture: fills را به هر شکلی اعمال کنید. - جلوههای بصری: سایه خارجی، درخشندگی، لبه نرم، تاری، بازتاب، و سایه داخلی از طریق
shape.EffectFormat. - 3D formatting: برجستگی، دوربین، ست نور، ماده، و عمق برآمدگی از طریق
shape.ThreeDFormat. - یادداشتهای سخنران: پیوست متن یادداشتها به هر اسلاید از طریق
NotesSlideManager.AddNotesSlide(). - نظرات زنجیرهای: افزودن نظرات با متادیتای نویسنده و موقعیت اسلاید.
- تصاویر جاسازیشده: جاسازی از مسیر فایل، بایتها، یا
Stream. - ویژگیهای سند: خواندن و نوشتن ویژگیهای هسته، برنامه و سفارشی.
شروع کار
نصب از NuGet. .NET 9.0 یا بالاتر مورد نیاز است.
dotnet add package Aspose.Slides.Foss
اولین ارائهٔ خود را با یک شکل ایجاد کنید و ذخیره کنید:
using Aspose.Slides.Foss;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 400, 120);
shape.AddTextFrame("Hello from Aspose.Slides FOSS!");
prs.Save("hello.pptx", SaveFormat.Pptx);
همیشه استفاده کنید Presentation درون یک using بلوک؛ این اطمینان میدهد که تمام منابع داخلی هنگام خروج از بلوک آزاد میشوند.
مثال قالببندی متن
using Aspose.Slides.Foss;
using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold heading in corporate blue");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 28;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
prs.Save("formatted.pptx", SaveFormat.Pptx);
محدودیتهای فعلی
مناطق زیر را برمیانگیزد NotImplementedException در این نسخه:
- نمودارها، SmartArt و اشیاء OLE
- انیمیشنها و انتقال اسلایدها
- صادرات به PDF، HTML، SVG یا فرمتهای تصویری
- پیوندهای فراگیر، تنظیمات اقدام، ماکروهای VBA و امضاهای دیجیتال
قسمتهای XML ناشناسی که در حین بارگذاری مواجه میشوند، بهصورت دقیق در زمان ذخیرهسازی حفظ میشوند، بنابراین فایلهای PPTX تولید شده توسط ابزارهای دیگر بهصورت ایمن دورگرد میشوند.