Kā ielādēt prezentācijas .NET
Aspose.Slides FOSS for .NET lets you open any .pptx fails, pārbaudiet tā saturu un vai nu saglabājiet to atpakaļ kā PPTX, vai arī izvelciet no tā datus. Šis ceļvedis aptver faila atvēršanu, slaidu iterāciju, formas teksta nolasīšanu un saglabāšanas atgriešanu.
Solī pa solim rokasgrāmata
1. solis: instalējiet pakotni
dotnet add package Aspose.Slides.Foss2. solis: Atvērt esošu prezentāciju
Pārsūtiet faila ceļu uz new Presentation(). Izmantojiet using paziņojumu, lai nodrošinātu iztīrīšanu.
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);Nezināmās XML daļas avota failā tiek saglabātas burtiski: bibliotēka nekad neizņem saturu, ko tā vēl nesaprot.
3. solis: Pārbaudīt slaidus
Iterējiet visus slaidus un izdrukājiet to indeksu:
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");
}4. solis: Nolasīt formas tekstu
Iterējiet pār formām un nolasiet tekstu no formām, kurām ir 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}");
}
}
}5. solis: Nolasīt dokumenta īpašības
Piekļūt galvenajām dokumenta īpašībām no 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}");6. solis: Apgrieztais saglabāšana
Pēc prezentācijas pārbaudes vai modificēšanas, saglabājiet to atpakaļ PPTX formātā:
prs.Save("output.pptx", SaveFormat.Pptx);Saglabāšana citā ceļā izveido jaunu failu. Saglabāšana tajā pašā ceļā pārraksta oriģinālu.
Biežāk sastopamās problēmas un to risinājumi
FileNotFoundException
Pārbaudiet, vai ceļš uz .pptx failu ir pareizs attiecībā pret darba direktoriju. Izmantojiet Path.Combine robustai ceļa konstrukcijai:
string path = Path.Combine(AppContext.BaseDirectory, "assets", "deck.pptx");
using var prs = new Presentation(path);Exception: File format is not supported
Bibliotēka atbalsta .pptx (Office Open XML) tikai. Mantots .ppt (binary PowerPoint 97-2003) faili netiek atbalstīti.
Formām nav TextFrame īpašības
Dažas figūras (Connector, PictureFrame) nav TextFrame. Pārveido uz IAutoShape un pārbaudi null vērtību pirms piekļuves tekstam.
Biežāk uzdotie jautājumi
Vai ielāde saglabā visu sākotnējo saturu?
Jā. Nezināmās XML daļas tiek saglabātas precīzi, veicot saglabāšanu un atgriešanu. Bibliotēka neizņems nevienu XML saturu, ko tā vēl neatpazīst.
Vai varu ielādēt ar paroli aizsargātu PPTX?
Paroli aizsargātas (šifrētas) prezentācijas šajā izdevumā netiek atbalstītas.
Vai varu izvilkt iegultus attēlus?
Piekļūsti attēlu kolekcijai: prs.Images atgriež ImageCollection. Katram attēlam ir īpašības, lai nolasītu neapstrādātos attēla datus.
Vai ielāde no MemoryStream tiek atbalstīta?
Jā. The Presentation constructor pieņem Stream:
using var stream = new MemoryStream(pptxBytes);
using var prs = new Presentation(stream);
Console.WriteLine($"Slides: {prs.Slides.Count}");