کتابخانه رایگان C# .NET برای تولید PowerPoint PPTX از قالب
API منبع باز C# .NET PPTX امکان تولید پویا ارائههای PowerPoint (.pptx) از قالبها را فراهم میکند. متن یا تصاویر را جایگزین کنید، اسلایدها را اضافه/حذف یا کلون کنید در برنامههای C#.
PPTXTemplater چیست؟
از ایجاد و بهروزرسانی دستی بیشمار ارائههای پاورپوینت خسته شدهاید؟ اگر برنامه شما نیاز دارد فایلهای .pptx پویا و مبتنی بر داده تولید کند، برنامهنویسی این کار بهطور سنتی کار پیچیده و ناامیدکنندهای بوده است. دستکاری دستی XML داخل بسته PPTX یک کابوس است و اغلب توسعهدهندگان به روشهای ناخوشایند مانند کپی کردن اسلایدها یا استفاده از اشیاء COM سختقابلیتکنترل متوسل میشوند. اگر بتوانید یک قالب زیبا را مستقیماً در پاورپوینت طراحی کنید و سپس بهصورت برنامهای با دادهها پر کنید با استفاده از یک کتابخانه .NET ساده، سبک و صرفاً برنامهای، چه میشود؟ PPTXTemplater، یک پروژه منبع باز نوآورانه که بازی را برای خودکارسازی پاورپوینت تغییر میدهد.
PPTXTemplater یک کتابخانه C# است که به توسعهدهندگان نرمافزار امکان میدهد بهصورت برنامهنویسی فایلهای PowerPoint (.pptx) را بر پایه قالبهای از پیش تعریفشده تولید و مدیریت کنند. این کتابخانه از PPTXTemplater بهره میبرد و یک انتزاع سطح بالاتر ارائه میدهد که کار پیچیدهٔ دستکاری اسناد PowerPoint را ساده میکند. ایدهٔ اصلی این است که یک قالب با جاینگهدارها ایجاد کنید و سپس با استفاده از PPTXTemplater آن جاینگهدارها را با دادههای خود پر کنید، که این راهحل را برای تولید گزارشها، گواهینامهها، پیشنهادها و موارد دیگر ایدهآل میسازد.
شروع کار با PPTXTemplater
روش پیشنهادی برای نصب PPTXTemplater استفاده از GitHub است. لطفاً برای نصب آسان از دستور زیر استفاده کنید.
PPTXTemplater را از گیتهاب نصب کنید
git clone https://github.com/tkrotoff/PptxTemplater.gitتولید فایلهای PPTX مبتنی بر قالب با استفاده از C#
پایهٔ PptxTemplater رویکرد مبتنی بر قالب آن است. شما با ایجاد یک ارائهٔ استاندارد PowerPoint که به عنوان قالب شما عمل میکند، شروع میکنید. در این قالب میتوانید مکانگیرهایی برای محتوای پویا با استفاده از یک سینتکس ساده و شهودی، معمولاً {{placeholder_name}}، تعریف کنید. این به شما امکان میدهد اسلایدهای خود را مستقیماً در PowerPoint طراحی کنید و کنترل کامل بر جنبههای بصری ارائهتان داشته باشید. در اینجا یک مثال ساده نشان میدهد که چگونه میتوان یک قالب PowerPoint با دو اسلاید را از طریق کتابخانهٔ C# ایجاد کرد؟
چگونه یک قالب پاورپوینت با دو اسلاید با استفاده از کتابخانه C# ایجاد کنیم؟
const string srcFileName = "template.pptx";
const string dstFileName = "final.pptx";
File.Delete(dstFileName);
File.Copy(srcFileName, dstFileName);
Pptx pptx = new Pptx(dstFileName, FileAccess.ReadWrite);
int nbSlides = pptx.SlidesCount();
Assert.AreEqual(2, nbSlides);
// First slide
{
PptxSlide slide = pptx.GetSlide(0);
slide.ReplaceTag("{{hello}}", "HELLO HOW ARE YOU?", PptxSlide.ReplacementType.Global);
slide.ReplaceTag("{{bonjour}}", "BONJOUR TOUT LE MONDE", PptxSlide.ReplacementType.Global);
slide.ReplaceTag("{{hola}}", "HOLA MAMA QUE TAL?", PptxSlide.ReplacementType.Global);
}
// Second slide
{
PptxSlide slide = pptx.GetSlide(1);
slide.ReplaceTag("{{hello}}", "H", PptxSlide.ReplacementType.Global);
slide.ReplaceTag("{{bonjour}}", "B", PptxSlide.ReplacementType.Global);
slide.ReplaceTag("{{hola}}", "H", PptxSlide.ReplacementType.Global);
}
جایگزینی متن در ارائه PPTX با استفاده از C#
یکی از اساسیترین ویژگیهای PptxTemplater توانایی آن در جایگزینی مکانگیرهای متنی با دادههای شماست. این برای شخصیسازی ارائهها با نامها، تاریخها، اعداد و سایر اطلاعات متنی بهطرز فوقالعادهای مفید است. در اینجا یک مثال ساده نشان میدهد که چگونه توسعهدهندگان نرمافزار میتوانند متن داخل یک ارائهٔ PPTX را در برنامههای C# .NET جایگزین کنند.
چگونه متن داخل ارائه PPTX را با استفاده از کتابخانه C# جایگزین کنیم؟
using PptxTemplater;
// Load the template
using (var presentation = new Presentation("template.pptx"))
{
// Define the data
var data = new Dictionary
{
{ "name", "John Doe" },
{ "date", DateTime.Now.ToShortDateString() }
};
// Fill the template
presentation.Fill(data);
// Save the new presentation
presentation.SaveAs("output.pptx");
}
جایگزینی تصاویر در ارائه PPTX با استفاده از C#
کتابخانه منبع باز PptxTemplater محدود به متن نیست. توسعهدهندگان نرمافزار میتوانند تصاویر داخل قالبهای خود را تنها با چند خط کد جایگزین کنند. این بهویژه برای تولید کاتالوگهای محصول، کارتهای کارمندی، یا هر ارائه دیگری که به تصاویر پویا نیاز دارد، مفید است. در اینجا یک مثال ساده که نشان میدهد چگونه تصاویر داخل ارائههای PPTX را جایگزین کنیم، آورده شده است. برای جایگزینی یک تصویر، ابتدا باید یک تصویر جایگزین در قالب خود اضافه کنید و به آن یک نام خاص بدهید (مثلاً "photo1").
چگونه متن داخل ارائه PPTX را با استفاده از کتابخانه C# جایگزین کنیم؟
// Assuming you have a slide with an image named "photo1"
var slide = presentation.Slides[0];
slide.ReplacePicture("photo1", "new_image.png");
افزودن، حذف یا کلون اسلاید با استفاده از C#
کتابخانه منبع باز PptxTemplater کنترل دقیق بر اسلایدهای ارائه شما را فراهم میکند. میتوانید اسلایدهای موجود را کلون کنید تا بخشهای پویا ایجاد کنید یا اسلایدهایی که بر اساس دادههای شما لازم نیستند را حذف کنید. علاوه بر این، امکان افزودن اسلایدهای جدید و حذف اسلایدهای ناخواسته نیز وجود دارد. مثال زیر نشان میدهد چگونه یک اسلاید را در برنامههای C# کلون یا حذف کنید.
چگونه یک اسلاید را در ارائه PPTX با استفاده از کتابخانه C# کلون یا حذف کنیم؟
/// Clone a slide
var newSlide = presentation.CloneSlide(0);
// Remove a slide
presentation.RemoveSlide(1);