Operace prezentace s nízkým kódem v .NET

Přehled

Namespace Aspose.Slides.LowCode poskytuje statické pomocné třídy pro běžné operace s prezentacemi. Tyto pomocníky zapouzdřují často používané workflow objektového modelu do zaměřených metod, takže můžete konvertovat nebo slučovat soubory, zpracovávat prvky prezentace, shromažďovat tvary a odstraňovat nepoužité položky s méně kódem.

Low‑code pomocníky jsou nejvíce užitečné, když operace platí pro celý soubor nebo prezentaci a výchozí workflow odpovídá vašim požadavkům. Použijte kompletní Aspose.Slides objektový model, když potřebujete detailní kontrolu nad jednotlivými snímky, mistry, rozloženími, tvary, nastaveními exportu nebo vztahy mezi prvky prezentace.

Následující tabulka shrnuje dostupné pomocníky:

Pomocník Použijte pro
Convert Konverzi prezentace do jiného formátu přímým voláním soubor‑na‑soubor.
Merger Kombinaci kompletních souborů prezentací stejného formátu.
ForEach Provedení akce pro každý snímek, tvar, odstavec nebo část textu.
Collect Získání tvarů z celé prezentace pro opakované zpracování nebo analýzu.
Compress Odstranění nepoužívaných mistrů a rozložení a zmenšení vložených dat fontů.

Konverze prezentace

Použijte Convert.AutoByExtension když je přípona výstupního souboru dostačující k výběru formátu exportu. Metoda otevře zdrojovou prezentaci, určí požadovaný formát z výstupní cesty a zapíše výsledek.

using Aspose.Slides.LowCode;

Convert.AutoByExtension("input.pptx", "output.pdf");

Třída Convert také poskytuje vyhrazené metody pro výstup PDF, SVG, JPEG, PNG a TIFF. Použijte úplný objektový model, když potřebujete před exportem prohlédnout nebo upravit prezentaci nebo nastavit volbu exportu, která není pomocníkem zpřístupněna. Viz Convert Presentation pro workflow a možnosti specifické pro formát.

Sloučení prezentací

Použijte Merger.Process pro kombinaci kompletních souborů prezentací jedním voláním. Vstupní prezentace musí mít stejný formát souboru.

using Aspose.Slides.LowCode;

var inputFiles = new[] { "part-1.pptx", "part-2.pptx" };
Merger.Process(inputFiles, "merged.pptx");

Tento pomocník je vhodný, když mají být všechny snímky připojeny k jednomu výsledku bez individuálního výběru nebo přemapování. Použijte úplný objektový model, když potřebujete sloučit vybrané snímky, použít cílový mistr nebo rozložení, explicitně zachovat sekce nebo sladit různé velikosti snímků. Viz Merge Presentations pro tyto scénáře.

Iterace přes prvky prezentace

Třída ForEach volá zpětné volání pro každý požadovaný typ prvku prezentace. Vyhýbá se vnořeným smyčkám sbírek a je pohodlná pro kontrolu nebo změny formátování v celé prezentaci.

Následující příklad používá ForEach.Slide, ForEach.Shape, ForEach.Paragraph a ForEach.Portion k prozkoumání odpovídajících prvků:

using System;
using Aspose.Slides;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("input.pptx");

ForEach.Slide(presentation, (slide, index) =>
{
    Console.WriteLine($"Slide {index}: {slide.Shapes.Count} shapes");
});

ForEach.Shape(presentation, (shape, slide, index) =>
{
    Console.WriteLine($"Shape {index} on {slide.GetType().Name}: {shape.Name}");
});

ForEach.Paragraph(presentation, (paragraph, slide, index) =>
{
    Console.WriteLine($"Paragraph {index} on {slide.GetType().Name}: {paragraph.Text}");
});

ForEach.Portion(presentation, (portion, paragraph, slide, index) =>
{
    Console.WriteLine($"Portion {index} on {slide.GetType().Name}: {portion.Text}");
});

Ve výchozím nastavení zahrnuje průchod tvary a text v celé prezentaci normální, mistr a layout snímky. Přetížení s parametrem includeNotes může zpracovávat i snímky poznámek. Použijte přímé smyčky sbírek, když je důležitý pořadí průchodu, předčasný výstup, filtrování před voláním zpětné funkce nebo podrobná kontrola rodič‑dítě.

Shromažďování tvarů

Použijte Collect.Shapes když potřebujete kolekci všech tvarů v prezentaci místo zpětného volání pro každý tvar. To je užitečné, pokud bude stejná sada filtrována, počítána nebo zpracována vícekrát.

using System;
using Aspose.Slides;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("input.pptx");
var shapes = Collect.Shapes(presentation);

foreach (var shape in shapes)
{
    Console.WriteLine($"{shape.Name}: {shape.GetType().Name}");
}

Použijte místo toho ForEach.Shape pokud lze každý tvar zpracovat okamžitě a není potřeba uchovávat shromážděný výsledek.

Komprese obsahu prezentace

Třída Compress může odstranit nepoužívané strukturální prvky a zmenšit vložená data fontů:

using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("input.pptx");

Compress.RemoveUnusedLayoutSlides(presentation);
Compress.RemoveUnusedMasterSlides(presentation);
Compress.CompressEmbeddedFonts(presentation);

presentation.Save("compressed.pptx", SaveFormat.Pptx);

Odstraňujte nejprve nepoužívaná rozložení a až potom nepoužívané mistry, aby mohl být mistr, který se po úklidu rozložení stane nepřipojeným, také odstraněn. Uložte optimalizovanou prezentaci do nového souboru, pokud můžete později potřebovat původní mistry, rozložení nebo kompletní data vložených fontů. Pro podrobnosti viz Slide Master a Embedded Font.

Často kladené otázky

Kdy mám použít low‑code API místo úplného objektového modelu?

Používejte low‑code pomocníky, když standardní operace platí pro celý soubor nebo prezentaci a nevyžaduje detailní kontrolu nad jednotlivými prvky. Použijte úplný objektový model, když potřebujete vybrat konkrétní snímky, řídit vztahy mistr‑layout, prověřit mezistav nebo nastavit chování, které pomocník neodhaluje.

Může Merger sloučit prezentace v různých formátech souborů?

Ne. Merger.Process vyžaduje vstupní prezentace ve stejném formátu. Nejprve převěďte vstupní soubory do společného formátu, například pomocí Convert.AutoByExtension, a pak sloučte převedené soubory.

Zpracovává ForEach mistry, layouty a snímky poznámek?

ForEach.Slide iteruje přes normální snímky prezentace. Operace ForEach.Shape, ForEach.Paragraph a ForEach.Portion zahrnují ve výchozím nastavení normální, mistr a layout snímky. Použijte jejich přetížení s includeNotes nastaveným na true, aby zahrnovaly i snímky poznámek.

Jaký je rozdíl mezi ForEach.Shape a Collect.Shapes?

Použijte ForEach.Shape k okamžitému zpracování každého tvaru pomocí zpětného volání. Použijte Collect.Shapes když potřebujete výsledek jako enumerable, který můžete uchovat, filtrovat, počítat nebo procházet vícekrát.

Zmenšuje Compress vždy velikost souboru prezentace?

Ne nutně. Výsledek závisí na tom, zda prezentace obsahuje nepoužívaná rozložení, nepoužívané mistry nebo vložené fonty s nepoužívanými znaky. Pokud žádné z těchto položek chybí, příslušné operace Compress nemusí velikost souboru snížit.

Ukládají se změny provedené pomocníky ForEach nebo Compress automaticky?

Ne. Tyto pomocníky pracují s načteným objektem Presentation v paměti. Po změně prvků v zpětném volání ForEach nebo po spuštění Compress zavolejte Presentation.Save, abyste výsledek zapsali.

Související články