Kuinka ladata esitykset .NET:ssä
Aspose.Slides FOSS for .NET antaa sinun avata minkä tahansa .pptx-tiedoston, tarkastella sen sisältöä ja joko tallentaa sen takaisin PPTX-muotoon tai poimia siitä tietoja. Tämä opas kattaa tiedoston avaamisen, diojen läpikäymisen, muotojen tekstin lukemisen ja tallennuksen pyöräytyksen.
Vaiheittainen opas
Vaihe 1: Asenna paketti
dotnet add package Aspose.Slides.FossVaihe 2: Avaa olemassa oleva esitys
Välitä tiedostopolku new Presentation(). Käytä using-lausetta varmistaaksesi siivouksen.
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);Tuntemattomat XML-osat lähdetiedostossa säilytetään tarkasti sellaisenaan: kirjasto ei koskaan poista sisältöä, jota se ei vielä ymmärrä.
Vaihe 3: Tarkista diat
Käy läpi kaikki diat ja tulosta niiden indeksi:
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");
}Vaihe 4: Lue muodon teksti
Iteroi muotojen läpi ja lue teksti muodoista, joilla on 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}");
}
}
}Vaihe 5: Lue asiakirjan ominaisuudet
Pääse käsiksi ydindokumentin ominaisuuksiin kohteesta 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}");Vaihe 6: Kaksisuuntainen tallennus
Kun olet tarkastanut tai muokannut esitystä, tallenna se takaisin PPTX-muotoon:
prs.Save("output.pptx", SaveFormat.Pptx);Tallentaminen eri polkuun luo uuden tiedoston. Tallentaminen samaan polkuun korvaa alkuperäisen.
Yleisiä ongelmia ja korjauksia
FileNotFoundException
Tarkista, että .pptx-tiedoston polku on oikea suhteessa työhakemistoon. Käytä Path.Combine:ää luotettavan polun muodostamiseen:
string path = Path.Combine(AppContext.BaseDirectory, "assets", "deck.pptx");
using var prs = new Presentation(path);Exception: File format is not supported
Kirjasto tukee vain .pptx (Office Open XML). Vanhoja .ppt (binääri PowerPoint 97-2003) tiedostoja ei tueta.
Muodoilla ei ole TextFrame-ominaisuutta
Jotkut muodot (Connector, PictureFrame) eivät sisällä TextFrame. Muunna IAutoShape:ksi ja tarkista null ennen tekstin käyttämistä.
Usein kysytyt kysymykset
Säilyttääkö lataus kaiken alkuperäisen sisällön?
Kyllä. Tuntemattomat XML‑osat säilytetään tarkalleen sellaisina kierrospalautuksen tallennuksessa. Kirjasto ei poista mitään XML‑sisältöä, jota se ei vielä tunnista.
Voinko ladata salasanasuojatun PPTX:n?
Salasanalla suojattuja (salattuja) esityksiä ei tueta tässä versiossa.
Voinko poimia upotetut kuvat?
Käytä kuvakokoelmaa: prs.Images palauttaa ImageCollection. Jokaisella kuvalla on ominaisuuksia raakan kuvatiedon lukemiseen.
Onko lataaminen MemoryStreamistä tuettu?
Kyllä. Presentation-konstruktori hyväksyy Stream:
using var stream = new MemoryStream(pptxBytes);
using var prs = new Presentation(stream);
Console.WriteLine($"Slides: {prs.Slides.Count}");