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.FossKorak 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}");