Kā ielādēt prezentācijas .NET
Aspose.Slides FOSS for .NET ļauj atvērt jebkuru .pptx failu, pārbaudīt tā saturu un vai nu saglabāt to atpakaļ kā PPTX, vai izvilkt no tā datus. Šis ceļvedis aptver faila atvēršanu, slaidu iterāciju, formas teksta nolasīšanu un saglabāšanas apgrieztu procesu.
Rokasgrāmata soli pa solim
1. solis: instalēt pakotni
dotnet add package Aspose.Slides.FossSolis 2: Atvērt esošu prezentāciju
Pārsūtiet faila ceļu uz new Presentation(). Izmantojiet using paziņojumu, lai nodrošinātu tī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āmas XML daļas avota failā tiek saglabātas burtiski: bibliotēka nekad neizņem saturu, ko tā vēl nesaprot.
Solis 3: Pārbaudīt slaidus
Iterējiet pār visiem slaidiem 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āri formām un nolasiet tekstu no formām, kurām ir 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: Dokumenta īpašību nolasīšana
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žas problēmas un risinājumi
FileNotFoundException
Pārbaudiet, vai ceļš uz .pptx failu ir pareizs attiecībā uz darba direktoriju. Izmantojiet Path.Combine, lai izveidotu stabilu ceļu:
string path = Path.Combine(AppContext.BaseDirectory, "assets", "deck.pptx");
using var prs = new Presentation(path);Exception: File format is not supported
Bibliotēka atbalsta tikai .pptx (Office Open XML). Vecākas .ppt (binārais PowerPoint 97-2003) faili netiek atbalstīti.
Formām nav TextFrame īpašības
Dažas formas (Connector, PictureFrame) nav TextFrame. Pārveido uz IAutoShape un pārbaudi, vai tas nav null, pirms piekļūt tekstam.
Biežāk uzdotie jautājumi
Vai ielāde saglabā visu oriģinālo saturu?
Jā. Nezināmās XML daļas tiek saglabātas burtiski, veicot apgriezto saglabāšanu. Bibliotēka neizdzēsīs nevienu XML saturu, ko tā vēl neatpazīst.
Vai varu ielādēt ar paroli aizsargātu PPTX?
Paroles aizsargātas (šifrētas) prezentācijas šajā izdevumā netiek atbalstītas.
Vai es varu izvilkt iegultus attēlus?
Piekļūstiet 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ā. Presentation konstruktoram pieņem Stream:
using var stream = new MemoryStream(pptxBytes);
using var prs = new Presentation(stream);
Console.WriteLine($"Slides: {prs.Slides.Count}");