Kā ielādēt prezentācijas .NET vidē

Kā ielādēt prezentācijas .NET vidē

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, formu teksta nolasīšanu un saglabāšanas apgriešanu.

Rokasgrāmata soli pa solim

1. solis: instalēt pakotni

dotnet add package Aspose.Slides.Foss

2. solis: Atvērt esošu prezentāciju

Padodiet faila ceļu uz new Presentation(). Izmantojiet using izteikumu, 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.


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

Solis 6: Apgrieztais saglabāšana

Pēc prezentācijas pārbaudes vai modificēšanas saglabājiet to atpakaļ kā PPTX:

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

Saglabājot citā ceļā, tiek izveidots jauns fails. Saglabājot tajā pašā ceļā, tiek pārrakstīts oriģināls.


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, lai izveidotu stabilu ceļa konstrukciju:

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ārie PowerPoint 97-2003) faili netiek atbalstīti.

Formām nav TextFrame īpašības

Dažām formām (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 apgrieztā saglabāšanas laikā. Bibliotēka neizdzēsīs nevienu XML saturu, ko tā vēl neatpazīst.

Vai es 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}");

Skatīt arī

 Latviešu