Použít nebo změnit rozvržení snímků v .NET
Úvod
Rozvržení snímku určuje uspořádání míst pro obsah a formátování obsahu na snímku. Řídí, které zástupné objekty jsou k dispozici a kde se zobrazují. Rozvržení snímků vám pomáhá rychle a jednotně navrhovat prezentace – ať už vytváříte něco jednoduchého nebo složitějšího. Mezi nejčastější rozvržení snímků v PowerPointu patří:
Rozvržení titulního snímku – Obsahuje dva textové zástupce: jeden pro název a jeden pro podtitul.
Rozvržení název a obsah – Obsahuje menší zástupce pro název v horní části a větší pod ním pro hlavní obsah (jako je text, odrážky, grafy, obrázky a další).
Prázdné rozvržení – Neobsahuje žádné zástupce, což vám dává plnou kontrolu nad návrhem snímku od nuly.
Rozvržení snímků jsou součástí hlavního snímku, který je nejvyšší úrovní snímku definujícího styly rozvržení pro celou prezentaci. K rozvrhům snímků můžete přistupovat a upravovat je přes hlavní snímek — buď podle jejich typu, názvu nebo unikátního ID. Případně můžete konkrétní rozvržení snímku upravit přímo v prezentaci.
Pro práci s rozvrženími snímků v Aspose.Slides pro .NET můžete použít:
- Vlastnosti jako LayoutSlides a Masters pod třídou Presentation
- Typy jako ILayoutSlide, IMasterLayoutSlideCollection, ILayoutPlaceholderManager, a ILayoutSlideHeaderFooterManager
Info
Pro další informace o práci s hlavními snímky si přečtěte článek Slide Master.Přidání rozvržení snímků do prezentací
Pro přizpůsobení vzhledu a struktury vašich snímků možná budete potřebovat přidat nová rozvržení snímků do prezentace. Aspose.Slides pro .NET vám umožňuje zkontrolovat, zda konkrétní rozvržení již existuje, v případě potřeby přidat nové a použít jej k vložení snímků založených na tomto rozvržení.
- Vytvořte instanci třídy Presentation.
- Získejte přístup k IMasterLayoutSlideCollection.
- Zkontrolujte, zda požadované rozvržení snímku již existuje ve sbírce. Pokud ne, přidejte potřebné rozvržení snímku.
- Přidejte prázdný snímek založený na novém rozvržení snímku.
- Uložte prezentaci.
// Vytvořte instanci třídy Presentation, která představuje soubor PowerPoint.
using (Presentation presentation = new Presentation("Sample.pptx"))
{
// Procházejte typy rozvržení snímků a vyberte požadované rozvržení.
IMasterLayoutSlideCollection layoutSlides = presentation.Masters[0].LayoutSlides;
ILayoutSlide layoutSlide = layoutSlides.GetByType(SlideLayoutType.TitleAndObject) ?? layoutSlides.GetByType(SlideLayoutType.Title);
if (layoutSlide == null)
{
// Situace, kdy prezentace neobsahuje všechny typy rozvržení.
// Soubor prezentace obsahuje jen typy rozvržení Blank a Custom.
// Nicméně rozvržení s vlastními typy mohou mít rozpoznatelné názvy,
// například "Title", "Title and Content", atd., které lze použít pro výběr rozvržení snímku.
// Můžete se také spolehnout na sadu typů tvarů zástupných objektů.
// Například titulní snímek by měl mít jen typ zástupce Title, a podobně.
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");
}
}
}
}
// Přidejte prázdný snímek pomocí přidaného rozvržení snímku.
presentation.Slides.InsertEmptySlide(0, layoutSlide);
// Uložte prezentaci na disk.
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
Odstranění nepoužívaných rozvržení snímků
Aspose.Slides poskytuje metodu RemoveUnusedLayoutSlides třídy Compress, která vám umožní smazat nechtěná a nepoužívaná rozvržení snímků.
Níže uvedený kód C# ukazuje, jak odstranit rozvržení snímku z prezentace PowerPoint:
using (Presentation presentation = new Presentation("Presentation.pptx"))
{
Aspose.Slides.LowCode.Compress.RemoveUnusedLayoutSlides(presentation);
presentation.Save("Output.pptx", SaveFormat.Pptx);
}
Přidání zástupných objektů do rozvržení snímků
Aspose.Slides poskytuje vlastnost ILayoutSlide.PlaceholderManager, která umožňuje přidávat nové zástupce do rozvržení snímku.
Tento správce obsahuje metody pro následující typy zástupců:
| PowerPoint zástupce | ILayoutPlaceholderManager metoda |
|---|---|
![]() |
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) |
Níže uvedený kód C# ukazuje, jak přidat nové tvary zástupců do prázdného rozvržení snímku:
using (var presentation = new Presentation())
{
// Získat prázdné rozvržení snímku.
ILayoutSlide layout = presentation.LayoutSlides.GetByType(SlideLayoutType.Blank);
// Získat správce zástupných objektů rozvržení snímku.
ILayoutPlaceholderManager placeholderManager = layout.PlaceholderManager;
// Přidat různé zástupce do prázdného rozvržení snímku.
placeholderManager.AddContentPlaceholder(20, 20, 310, 270);
placeholderManager.AddVerticalTextPlaceholder(350, 20, 350, 270);
placeholderManager.AddChartPlaceholder(20, 310, 310, 180);
placeholderManager.AddTablePlaceholder(350, 310, 350, 180);
// Přidat nový snímek s prázdným rozvržením.
ISlide newSlide = presentation.Slides.AddEmptySlide(layout);
presentation.Save("Placeholders.pptx", SaveFormat.Pptx);
}
Výsledek:

Nastavení viditelnosti zápatí pro rozvržení snímku
V prezentacích PowerPoint lze prvky zápatí, jako je datum, číslo snímku a vlastní text, zobrazit nebo skrýt podle rozvržení snímku. Aspose.Slides pro .NET vám umožňuje řídit viditelnost těchto zástupců zápatí. To je užitečné, když chcete, aby některá rozvržení zobrazovala informace v zápatí, zatímco jiná zůstávají čistá a minimalistická.
- Vytvořte instanci třídy Presentation.
- Získejte referenci na rozvržení snímku podle jeho indexu.
- Nastavte zástupce zápatí snímku jako viditelný.
- Nastavte zástupce čísla snímku jako viditelný.
- Nastavte zástupce data/času jako viditelný.
- Uložte prezentaci.
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);
}
Nastavení viditelnosti zápatí pro podřízené snímky
V prezentacích PowerPoint lze prvky zápatí, jako je datum, číslo snímku a vlastní text, řídit na úrovni hlavního snímku, aby byla zajištěna konzistence napříč všemi rozvrženími snímků. Aspose.Slides pro .NET vám umožňuje nastavit viditelnost a obsah těchto zástupců zápatí na hlavním snímku a tyto nastavení propagovat do všech podřízených rozvržení snímků. Tento přístup zajišťuje jednotné informace v zápatí v celé prezentaci.
- Vytvořte instanci třídy Presentation.
- Získejte referenci na hlavní snímek podle jeho indexu.
- Nastavte zástupce zápatí na hlavním snímku i na všech podřízených jako viditelné.
- Nastavte zástupce čísla snímku na hlavním snímku i na všech podřízených jako viditelné.
- Nastavte zástupce data/času na hlavním snímku i na všech podřízených jako viditelné.
- Uložte prezentaci.
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);
}
Často kladené dotazy
Jaký je rozdíl mezi hlavním snímkem a rozvržením snímku?
Hlavní snímek určuje celkový motiv a výchozí formátování, zatímco rozvržení snímků definují konkrétní uspořádání zástupců pro různé typy obsahu.
Mohu zkopírovat rozvržení snímku z jedné prezentace do druhé?
Ano, můžete klonovat rozvržení snímku z kolekce LayoutSlides jedné prezentace a vložit jej do jiné pomocí metody AddClone.
Co se stane, když smažu rozvržení snímku, které je stále používáno nějakým snímkem?
Pokud se pokusíte smazat rozvržení snímku, na který odkazuje alespoň jeden snímek v prezentaci, Aspose.Slides vyhodí výjimku PptxEditException. Pro odstranění takových situací použijte RemoveUnusedLayoutSlides, která bezpečně odstraní pouze rozvržení snímků, která nejsou používána.









