Kako učitati prezentacije u .NET

Kako učitati prezentacije u .NET

Aspose.Slides FOSS for .NET lets you open any .pptx datoteku, pregledajte njen sadržaj i ili je spremite natrag u PPTX ili iz nje izvadite podatke. Ovaj vodič pokriva otvaranje datoteke, iteriranje slajdova, čitanje teksta oblika i povratno spremanje.

Vodič korak po korak

Korak 1: Instalirajte paket

dotnet add package Aspose.Slides.Foss

Korak 2: Otvorite postojeću prezentaciju

Proslijedite putanju datoteke u new Presentation(). Koristite a using izjavu kako bi 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);

Nepoznati XML dijelovi u izvornoj datoteci čuvaju se doslovno: biblioteka nikada ne uklanja sadržaj koji još ne razumije.


Korak 3: Pregledajte slajdove

Iterirajte kroz sve slajdove i ispišite 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: Pročitajte tekst oblika

Iterirajte kroz oblike i pročitajte tekst iz oblika koji imaju a 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: Pročitajte svojstva 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: Round‑Trip spremanje

Nakon pregledavanja ili izmjene prezentacije, spremite je natrag u PPTX:

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

Spremanje na drugu putanju stvara novu datoteku. Spremanje na istu putanju prepisuje original.


Uobičajeni problemi i rješenja

FileNotFoundException

Provjerite da je putanja do a .pptx datoteke ispravna u odnosu na radni direktorij. 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. Legacy .ppt (binary PowerPoint 97-2003) datoteke nisu podržane.

Oblici nemaju svojstvo TextFrame

Neki oblici (Connector, PictureFrame) nemaju a TextFrame. Pretvorite u IAutoShape i provjerite null prije pristupa tekstu.


Često postavljana pitanja

Čuva li učitavanje sav izvorni sadržaj?

Da. Nepoznati XML dijelovi se čuvaju doslovno pri round‑trip spremanju. 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 (šifrirane) nisu podržane u ovoj verziji.

Mogu li izdvojiti ugrađene slike?

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

Je li učitavanje iz MemoryStream-a podržano?

Da. The Presentation konstruktor prihvaća Stream:

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

Vidi također

 Hrvatski