اعمال یا تغییر طرح اسلایدها در .NET
معرفی
یک طرح اسلاید ترتیب جعبههای جایدار و قالببندی محتوا را بر روی اسلاید تعریف میکند. این طرح تعیین میکند کدام جایدارها در دسترس هستند و در کجا ظاهر میشوند. طرحهای اسلاید به شما کمک میکنند تا ارائهها را به سرعت و بهصورت یکدست طراحی کنید—چه در حال ایجاد چیزی ساده باشید و چه پیچیدهتر. برخی از رایجترین طرحهای اسلاید در PowerPoint شامل:
طرح اسلاید عنوان – شامل دو جایدار متن است: یکی برای عنوان و دیگری برای زیرعنوان.
طرح اسلاید عنوان و محتوا – شامل یک جایدار عنوان کوچک در بالا و یک جایدار بزرگتر در زیر برای محتوای اصلی (مانند متن، نکات بولتی، نمودارها، تصاویر و دیگر موارد).
طرح خالی – هیچ جایداری ندارد و به شما کنترل کامل برای طراحی اسلاید از صفر میدهد.
طرحهای اسلاید بخشی از اسلاید مستر هستند که اسلاید سطح بالایی است و سبکهای طرح را برای ارائه تعریف میکند. میتوانید طرحهای اسلاید را از طریق اسلاید مستر دسترسی و ویرایش کنید—چه بر اساس نوع، نام یا شناسهٔ یکتا. بهجای آن، میتوانید یک اسلاید طرح خاص را مستقیماً داخل ارائه ویرایش کنید.
برای کار با طرحهای اسلاید در Aspose.Slides برای .NET، میتوانید از موارد زیر استفاده کنید:
- خصوصیات مانند LayoutSlides و Masters در زیر کلاس Presentation
- انواع مانند ILayoutSlide، IMasterLayoutSlideCollection، ILayoutPlaceholderManager، و ILayoutSlideHeaderFooterManager
Info
برای آشنایی بیشتر با کار با اسلایدهای مستر، مقالهٔ اسلاید مستر را ببینید.افزودن طرحهای اسلاید به ارائهها
برای سفارشیسازی ظاهر و ساختار اسلایدهای خود، ممکن است نیاز داشته باشید طرحهای اسلاید جدیدی به یک ارائه اضافه کنید. Aspose.Slides برای .NET به شما این امکان را میدهد که بررسی کنید آیا یک طرح خاص قبلاً وجود دارد یا نه، در صورت نیاز یک طرح جدید اضافه کنید و از آن برای درج اسلایدهایی با آن طرح استفاده کنید.
- یک نمونه از کلاس Presentation ایجاد کنید.
- به IMasterLayoutSlideCollection دسترسی پیدا کنید.
- بررسی کنید آیا اسلاید طرح موردنظر در مجموعه موجود است یا خیر. اگر نیست، اسلاید طرح موردنیاز را اضافه کنید.
- یک اسلاید خالی بر پایهٔ اسلاید طرح جدید اضافه کنید.
- ارائه را ذخیره کنید.
کد C# زیر نشان میدهد چگونه یک طرح اسلاید به یک ارائه PowerPoint اضافه شود:
// ایجاد نمونهای از کلاس Presentation که نمایانگر یک فایل PowerPoint است.
using (Presentation presentation = new Presentation("Sample.pptx"))
{
// از انواع اسلایدهای طرح عبور کنید تا یک اسلاید طرح انتخاب شود.
IMasterLayoutSlideCollection layoutSlides = presentation.Masters[0].LayoutSlides;
ILayoutSlide layoutSlide = layoutSlides.GetByType(SlideLayoutType.TitleAndObject) ?? layoutSlides.GetByType(SlideLayoutType.Title);
if (layoutSlide == null)
{
// موقعیتی که ارائه تمام انواع طرحها را شامل نمیشود.
// فایل ارائه فقط انواع طرح Blank و Custom را دارد.
// با این حال، اسلایدهای طرح با انواع سفارشی ممکن است نامهای قابل تشخیصی داشته باشند،
// مانند "Title"، "Title and Content"، و غیره که میتوانند برای انتخاب اسلاید طرح استفاده شوند.
// همچنین میتوانید به مجموعهای از انواع شکلهای جایدار متکی باشید.
// به عنوان مثال، یک اسلاید Title باید فقط نوع جایدار Title را داشته باشد، و به همین ترتیب.
foreach (ILayoutSlide titleAndObjectLayoutSlide in layoutSlides)
{
if (titleAndObjectLayoutSlide.Name == "Title and Object")
{
layoutSlide = titleAndObjectLayoutSlide;
break;
}
}
if (layoutSlide == null)
{
foreach (ILayoutSlide titleLayoutSlide in layoutSlides)
{
if (titleLayoutSlide.Name == "Title")
{
layoutSlide = titleLayoutSlide;
break;
}
}
if (layoutSlide == null)
{
layoutSlide = layoutSlides.GetByType(SlideLayoutType.Blank);
if (layoutSlide == null)
{
layoutSlide = layoutSlides.Add(SlideLayoutType.TitleAndObject, "Title and Object");
}
}
}
}
// یک اسلاید خالی با استفاده از اسلاید طرح اضافهشده اضافه کنید.
presentation.Slides.InsertEmptySlide(0, layoutSlide);
// ارائه را بر روی دیسک ذخیره کنید.
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
حذف اسلایدهای طرح استفاده نشده
Aspose.Slides متد RemoveUnusedLayoutSlides را از کلاس Compress ارائه میدهد تا بتوانید اسلایدهای طرح ناخواسته و استفاده نشده را حذف کنید.
کد C# زیر نحوه حذف یک اسلاید طرح از یک ارائه PowerPoint را نشان میدهد:
using (Presentation presentation = new Presentation("Presentation.pptx"))
{
Aspose.Slides.LowCode.Compress.RemoveUnusedLayoutSlides(presentation);
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
افزودن جایدارها به طرحهای اسلاید
Aspose.Slides ویژگی ILayoutSlide.PlaceholderManager را ارائه میدهد که به شما امکان میدهد جایدارهای جدیدی به یک اسلاید طرح اضافه کنید.
این مدیر شامل متدهایی برای انواع جایدارهای زیر است:
| جایدار PowerPoint | ILayoutPlaceholderManager متد |
|---|---|
![]() |
AddContentPlaceholder(float x, float y, float width, float height) |
![]() |
AddVerticalContentPlaceholder(float x, float y, float width, float height) |
![]() |
AddTextPlaceholder(float x, float y, float width, float height) |
![]() |
AddVerticalTextPlaceholder(float x, float y, float width, float height) |
![]() |
AddPicturePlaceholder(float x, float y, float width, float height) |
![]() |
AddChartPlaceholder(float x, float y, float width, float height) |
![]() |
AddTablePlaceholder(float x, float y, float width, float height) |
![]() |
AddSmartArtPlaceholder(float x, float y, float width, float height) |
![]() |
AddMediaPlaceholder(float x, float y, float width, float height) |
![]() |
AddOnlineImagePlaceholder(float x, float y, float width, float height) |
کد C# زیر نشان میدهد چگونه اشکال جایدار جدید به اسلاید طرح Blank اضافه شود:
using (var presentation = new Presentation())
{
// دریافت اسلاید طرح Blank.
ILayoutSlide layout = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);
// دریافت مدیر جایدار اسلاید طرح.
ILayoutPlaceholderManager placeholderManager = layout.PlaceholderManager;
// افزودن جایدارهای مختلف به اسلاید طرح Blank.
placeholderManager.AddContentPlaceholder(20, 20, 310, 270);
placeholderManager.AddVerticalTextPlaceholder(350, 20, 350, 270);
placeholderManager.AddChartPlaceholder(20, 310, 310, 180);
placeholderManager.AddTablePlaceholder(350, 310, 350, 180);
// افزودن اسلاید جدید با طرح Blank.
ISlide newSlide = presentation.Slides.AddEmptySlide(layout);
presentation.Save("Placeholders.pptx", SaveFormat.Pptx);
}
نتیجه:

تنظیم نمایش پابرگ برای یک اسلاید طرح
در ارائههای PowerPoint، عناصر پابرگ مانند تاریخ، شماره اسلاید و متن سفارشی میتوانند بر حسب طرح اسلاید نمایش یا مخفی شوند. Aspose.Slides برای .NET به شما امکان میدهد وضوح این جایدارهای پابرگ را کنترل کنید. این برای مواردی مفید است که میخواهید برخی طرحها اطلاعات پابرگ را نشان دهند در حالی که دیگران تمیز و حداقل باقی بمانند.
- یک نمونه از کلاس Presentation ایجاد کنید.
- یک ارجاع به اسلاید طرح را بر اساس اندیس آن دریافت کنید.
- جایدار پابرگ اسلاید را به حالت قابل نمایش تنظیم کنید.
- جایدار شماره اسلاید را به حالت قابل نمایش تنظیم کنید.
- جایدار تاریخ‑زمان را به حالت قابل نمایش تنظیم کنید.
- ارائه را ذخیره کنید.
کد C# زیر نشان میدهد چگونه وضوح پابرگ اسلاید را تنظیم کرده و کارهای مرتبط را انجام دهید:
using (Presentation presentation = new Presentation("Presentation.ppt"))
{
ILayoutSlideHeaderFooterManager headerFooterManager = presentation.LayoutSlides[0].HeaderFooterManager;
if (!headerFooterManager.IsFooterVisible)
{
headerFooterManager.SetFooterVisibility(true);
}
if (!headerFooterManager.IsSlideNumberVisible)
{
headerFooterManager.SetSlideNumberVisibility(true);
}
if (!headerFooterManager.IsDateTimeVisible)
{
headerFooterManager.SetDateTimeVisibility(true);
}
headerFooterManager.SetFooterText("Footer text");
headerFooterManager.SetDateTimeText("Date and time text");
presentation.Save("Presentation.ppt", SaveFormat.Ppt);
}
تنظیم نمایش پابرگ فرزند برای اسلاید
در ارائههای PowerPoint، عناصر پابرگ مانند تاریخ، شماره اسلاید و متن سفارشی میتوانند در سطح اسلاید مستر کنترل شوند تا تکرار یکسانی در تمامی اسلایدهای طرح داشته باشند. Aspose.Slides برای .NET به شما امکان میدهد وضوح و محتوای این جایدارهای پابرگ را در اسلاید مستر تنظیم کنید و این تنظیمات را به تمام اسلایدهای طرح فرزند اعمال کنید. این رویکرد اطلاعات پابرگ یکسانی را در تمام ارائه شما تضمین میکند.
- یک نمونه از کلاس Presentation ایجاد کنید.
- یک ارجاع به اسلاید مستر را بر اساس اندیس آن دریافت کنید.
- جایدارهای پابرگ مستر و تمام اسلایدهای طرح فرزند را به حالت قابل نمایش تنظیم کنید.
- جایدارهای شماره اسلاید مستر و تمام اسلایدهای طرح فرزند را به حالت قابل نمایش تنظیم کنید.
- جایدارهای تاریخ‑زمان مستر و تمام اسلایدهای طرح فرزند را به حالت قابل نمایش تنظیم کنید.
- ارائه را ذخیره کنید.
کد C# زیر این عملیات را نشان میدهد:
using (Presentation presentation = new Presentation("Presentation.ppt"))
{
IMasterSlideHeaderFooterManager headerFooterManager = presentation.Masters[0].HeaderFooterManager;
headerFooterManager.SetFooterAndChildFootersVisibility(true);
headerFooterManager.SetSlideNumberAndChildSlideNumbersVisibility(true);
headerFooterManager.SetDateTimeAndChildDateTimesVisibility(true);
headerFooterManager.SetFooterAndChildFootersText("Footer text");
headerFooterManager.SetDateTimeAndChildDateTimesText("Date and time text");
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
سوالات متداول
تفاوت اسلاید مستر و اسلاید طرح چیست؟
اسلاید مستر تم کلی و قالببندی پیشفرض را تعریف میکند، در حالی که اسلایدهای طرح چینشهای خاصی از جایدارها برای انواع مختلف محتوا را تعیین میکنند.
آیا میتوانم یک اسلاید طرح را از یک ارائه به ارائهٔ دیگر کپی کنم؟
بله، میتوانید یک اسلاید طرح را از مجموعهٔ LayoutSlides یک ارائه گرفته و با استفاده از متد AddClone در ارائهٔ دیگر وارد کنید.
اگر اسلاید طرحی که هنوز توسط اسلایدی استفاده میشود را حذف کنم چه میشود؟
اگر سعی کنید یک اسلاید طرح را حذف کنید که هنوز توسط حداقل یک اسلاید در ارائه ارجاع شده است، Aspose.Slides یک استثنای PptxEditException پرتاب میکند. برای جلوگیری از این، از RemoveUnusedLayoutSlides استفاده کنید که بهصورت ایمن تنها اسلایدهای طرح غیر استفادهشده را حذف میکند.









