Kako učitati prezentacije u .NET-u

Kako učitati prezentacije u .NET-u

Aspose.Slides FOSS for .NET omogućava otvaranje bilo koje .pptx datoteke, pregled njenog sadržaja i ili čuvanje nazad u PPTX ili izdvajanje podataka iz nje. Ovaj vodič pokriva otvaranje datoteke, iteriranje slajdova, čitanje teksta oblika i round‑tripping čuvanje.

Vodič korak po korak

Korak 1: Instalirajte paket

dotnet add package Aspose.Slides.Foss

Korak 2: Otvorite postojeću prezentaciju

Prosledite putanju do fajla new Presentation(). Koristite using izjavu da biste osigurali čišćenje.

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation("input.pptx");
Console.WriteLine($"Slide count: {prs.Slides.Count}");
prs.Save("output.pptx", SaveFormat.Pptx);

Nepožnati XML delovi u izvornom fajlu se čuvaju doslovno: biblioteka nikada ne uklanja sadržaj koji još ne razume.


Korak 3: Pregledaj slajdove

Iterirajte kroz sve slajdove i odštampajte njihov indeks:

using Aspose.Slides.Foss;

using var prs = new Presentation("deck.pptx");
for (int i = 0; i < prs.Slides.Count; i++)
{
    var slide = prs.Slides[i];
    int shapeCount = slide.Shapes.Count;
    Console.WriteLine($"Slide {i}: {shapeCount} shapes");
}

Korak 4: Čitanje teksta oblika

Iterirajte kroz oblike i pročitajte tekst iz oblika koji imaju TextFrame:

using Aspose.Slides.Foss;

using var prs = new Presentation("deck.pptx");
foreach (var slide in prs.Slides)
{
    foreach (var shape in slide.Shapes)
    {
        if (shape is IAutoShape autoShape && autoShape.TextFrame != null)
        {
            string text = autoShape.TextFrame.Text;
            if (!string.IsNullOrWhiteSpace(text))
                Console.WriteLine($"  Shape text: {text}");
        }
    }
}

Korak 5: Čitanje svojstava dokumenta

Pristupite osnovnim svojstvima dokumenta iz prs.DocumentProperties:

using Aspose.Slides.Foss;

using var prs = new Presentation("deck.pptx");
var props = prs.DocumentProperties;
Console.WriteLine($"Title:   {props.Title}");
Console.WriteLine($"Author:  {props.Author}");
Console.WriteLine($"Subject: {props.Subject}");

Korak 6: Sačuvaj u kružnom prolazu

Nakon pregleda ili izmene prezentacije, sačuvajte je nazad u PPTX:

prs.Save("output.pptx", SaveFormat.Pptx);

Čuvanje na drugu putanju kreira novu datoteku. Čuvanje na istu putanju prepisuje original.


Уобичајени проблеми и исправке

FileNotFoundException

Proverite da li je putanja do fajla .pptx ispravna u odnosu na radni direktorijum. Koristite Path.Combine za robusnu konstrukciju putanje:

string path = Path.Combine(AppContext.BaseDirectory, "assets", "deck.pptx");
using var prs = new Presentation(path);

Exception: File format is not supported

Biblioteka podržava .pptx (Office Open XML) samo. Zastareli .ppt (binarni PowerPoint 97‑2003) fajlovi nisu podržani.

Oblici nemaju TextFrame svojstvo

Neki oblici (Connector, PictureFrame) nemaju TextFrame. Pretvorite u IAutoShape i proverite da li je null pre nego što pristupite tekstu.


Često postavljana pitanja

Da li učitavanje čuva sav originalni sadržaj?

Da. Nepoznati XML delovi se čuvaju doslovno pri čuvanju u kružnom prolazu. Biblioteka neće ukloniti bilo koji XML sadržaj koji još ne prepoznaje.

Mogu li učitati PPTX zaštićen lozinkom?

Prezentacije zaštićene lozinkom (šifrovane) nisu podržane u ovoj ediciji.

Mogu li izvući ugrađene slike?

Pristupite kolekciji slika: prs.Images vraća ImageCollection. Svaka slika ima svojstva za čitanje sirovih podataka slike.

Da li je učitavanje iz MemoryStream‑a podržano?

Da. Konstruktor Presentation prihvata Stream:

using var stream = new MemoryStream(pptxBytes);
using var prs = new Presentation(stream);
Console.WriteLine($"Slides: {prs.Slides.Count}");

Види такође

 Српски