Alacsony kódú prezentációs műveletek .NET-ben
Áttekintés
Az Aspose.Slides.LowCode névtér statikus segédosztályokat biztosít a gyakori prezentációs műveletekhez. Ezek a segédek a gyakran használt objektummodell‑munkafolyamatokat fókuszált metódusokba vonják, így kevesebb kóddal konvertálhat vagy egyesíthet fájlokat, feldolgozhatja a prezentációelemeket, gyűjtheti az alakzatokat, és eltávolíthatja a nem használt tartalmat.
A low‑code segédek a leghasznosabbak, ha a művelet egy teljes fájlra vagy prezentációra vonatkozik, és az alapértelmezett munkafolyamat megfelel az igényeinek. Használja a teljes Aspose.Slides objektummodellt, ha finomhangolt vezérlésre van szüksége egyedi diák, mester‑, elrendezés‑, alakzat‑, export‑beállítások vagy a prezentációelemek közötti kapcsolatok tekintetében.
Az alábbi táblázat összefoglalja a rendelkezésre álló segédeket:
| Segédprogram | Mire használható |
|---|---|
| Convert | Prezentáció konvertálása másik formátumba egy közvetlen fájl‑fájl hívással. |
| Merger | Azonos formátumú teljes prezentációfájlok egyesítése. |
| ForEach | Művelet végrehajtása minden dia, alakzat, bekezdés vagy szövegrész esetén. |
| Collect | Alakzatok lekérdezése a teljes prezentációból ismételt feldolgozás vagy elemzés céljából. |
| Compress | Nem használt mesterek és elrendezések eltávolítása, valamint a beágyazott betűkészlet‑adatok csökkentése. |
Prezentáció konvertálása
Használja a Convert.AutoByExtension metódust, ha a kimeneti fájlkiterjesztés elegendő az export formátum kiválasztásához. A metódus megnyitja a forrás‑prezentációt, meghatározza a szükséges formátumot a kimeneti útvonal alapján, és kiírja az eredményt.
using Aspose.Slides.LowCode;
Convert.AutoByExtension("input.pptx", "output.pdf");
A Convert osztály dedikált metódusokat is biztosít PDF, SVG, JPEG, PNG és TIFF kimenethez. Használja a teljes objektummodellt, ha a konvertálás előtt vizsgálni vagy módosítani kell a prezentációt, vagy ha olyan export‑opciót kell beállítani, amelyet a kiválasztott segéd nem tesz elérhetővé. Lásd a Convert Presentation oldalt a formátumspecifikus munkafolyamatokért és beállításokért.
Prezentációk egyesítése
Használja a Merger.Process metódust a teljes prezentációfájlok egy hívással történő egyesítéséhez. A bemeneti prezentációknak azonos fájlformátummal kell rendelkezniük.
using Aspose.Slides.LowCode;
var inputFiles = new[] { "part-1.pptx", "part-2.pptx" };
Merger.Process(inputFiles, "merged.pptx");
Ez a segéd akkor megfelelő, ha minden diát egy eredménybe kell fűzni anélkül, hogy azokat egyenként kellene kiválasztani vagy újratervezni. Használja a teljes objektummodellt, ha kiválasztott diák egyesítésére, cél‑mester vagy elrendezés alkalmazására, szekciók explicitt megtartására vagy eltérő diaméretek egyeztetésére van szükség. Lásd a Merge Presentations oldalt az ilyen forgatókönyvekhez.
Prezentációelemek bejárása
A ForEach osztály visszahívást hív meg minden kért típusú prezentációelem esetén. Elkerüli a beágyazott gyűjtés‑ciklusokat, és kényelmes a prezentációszintű ellenőrzéshez vagy formázási változtatásokhoz.
Az alábbi példa a ForEach.Slide, ForEach.Shape, ForEach.Paragraph és a ForEach.Portion használatát mutatja a megfelelő elemek bejárásához:
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}");
});
Alapértelmezés szerint a prezentációszintű alakzat‑ és szövegvégigjárás a normál, mester‑ és elrendezés‑diákat is tartalmazza. Az includeNotes paraméterrel rendelkező túlterhelések a jegyzetdiákat is feldolgozhatják. Használjon közvetlen gyűjtés‑ciklusokat, ha a bejárási sorrend, korai kilépés, visszahívás előtti szűrés vagy a részletes szülő‑gyermek ellenőrzés fontos.
Alakzatok gyűjtése
Használja a Collect.Shapes metódust, ha a prezentáció összes alakzatának gyűjteményére van szüksége, ahelyett, hogy minden alakzat esetén visszahívást kapna. Ez akkor hasznos, ha ugyanazt a halmazt többször kell szűrni, számolni vagy feldolgozni.
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}");
}
Használja a ForEach.Shape metódust, ha minden alakzatot azonnal kezelni tud, és nincs szükség a gyűjtött eredmény megtartására.
Prezentáció tartalmának tömörítése
A Compress osztály képes eltávolítani a nem használt struktúralelemeket és csökkenteni a beágyazott betűkészlet‑adatokat:
- Compress.RemoveUnusedLayoutSlides eltávolítja az olyan elrendezési diákat, amelyekre egyetlen normál dia sem hivatkozik.
- Compress.RemoveUnusedMasterSlides eltávolítja a már nem használt mester‑diákat.
- Compress.CompressEmbeddedFonts eltávolítja a beágyazott betűkészletekből a nem használt karaktereket.
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);
Először távolítsa el a nem használt elrendezéseket, majd a nem használt mestereket, hogy a layout‑takarítás után keletkező referenciamentes mester is eltávolítható legyen. Mentse az optimalizált prezentációt egy új fájlba, ha később szüksége lehet az eredeti mesterekre, elrendezésekre vagy a teljes beágyazott betűkészlet‑adatra. További részletekért lásd a Slide Master és Embedded Font oldalakat.
GYIK
Mikor kellene a low‑code API‑t használni a teljes objektummodell helyett?
Használja a low‑code segédeket, ha egy szabványos művelet egy teljes fájlra vagy prezentációra vonatkozik, és nem igényel részletes vezérlést az egyedi elemek felett. Használja a teljes objektummodellt, ha specifikus diák kiválasztására, a mester‑ és elrendezés‑kapcsolatok szabályozására, köztes állapot ellenőrzésére vagy olyan viselkedés konfigurálására van szükség, amelyet a segéd nem tesz elérhetővé.
Kombinálhatja-e a Merger a különböző fájlformátumú prezentációkat?
Nem. A Merger.Process ugyanolyan formátumú bemeneti prezentációkat igényel. Először konvertálja a bemeneti fájlokat egy közös formátumba, például a Convert.AutoByExtension segítségével, majd egyesítse a konvertált fájlokat.
A ForEach feldolgozza a mester, elrendezés és jegyzet diákat?
A ForEach.Slide a normál prezentációs diákon iterál. A prezentációszintű ForEach.Shape, ForEach.Paragraph és ForEach.Portion műveletek alapértelmezés szerint a normál, mester‑ és elrendezés‑diákat is tartalmazzák. Használja a includeNotes paramétert true‑ra állítva a jegyzetdiák bevonásához.
Mi a különbség a ForEach.Shape és a Collect.Shapes között?
Használja a ForEach.Shape metódust, ha minden alakzatot azonnal egy visszahívásban akar feldolgozni. Használja a Collect.Shapes metódust, ha egy enumerálható eredményre van szükség, amelyet megtarthat, szűrhet, számolhat vagy többször bejárhat.
A Compress mindig kisebbé teszi a prezentáció fájlt?
Nem feltétlenül. Az eredmény attól függ, hogy a prezentáció tartalmaz‑e nem használt elrendezéseket, nem használt mestereket vagy beágyazott betűkészletet nem használt karakterekkel. Ha ezek egyike sem áll fenn, a megfelelő Compress művelet nem csökkenti a fájlméretet.
A ForEach vagy a Compress által végzett módosítások automatikusan mentődnek?
Nem. Ezek a segédek a memóriában betöltött Presentation objektumon dolgoznak. A ForEach visszahívásában vagy a Compress futtatása után hívja meg a Presentation.Save metódust az eredmény kiírásához.