Hvordan lagre presentasjoner i .NET

Hvordan lagre presentasjoner i .NET

Aspose.Slides FOSS for .NET lagrer presentasjoner utelukkende i .pptx‑format ved hjelp av prs.Save(path, SaveFormat.Pptx). Denne veiledningen dekker riktig lagringsmønster, lagring til en annen sti, lagring til en strøm og vanlige lagringsrelaterte feil.

Steg-for-steg guide

Steg 1: Installer pakken

dotnet add package Aspose.Slides.Foss

Steg 2: Åpne eller opprett en presentasjon

Bruk alltid en using-setning. Lagringskallet må skje før objektet blir disponert.

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

// Create new
using var prs = new Presentation();
prs.Save("new.pptx", SaveFormat.Pptx);
// Open existing
using var prs = new Presentation("input.pptx");
prs.Save("output.pptx", SaveFormat.Pptx);

Steg 3: Lagre etter alle endringer

Plasser Save()‑kallet etter at alle endringer er fullført, før using‑omfanget avsluttes.

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 300, 100);
shape.AddTextFrame("Hello, World!");
prs.Save("output.pptx", SaveFormat.Pptx);

Trinn 4: Lagre til en annen sti

Angi en annen utdata sti for å opprette en ny fil uten å endre den opprinnelige:

using var prs = new Presentation("template.pptx");
// modify ...
prs.Save("customized.pptx", SaveFormat.Pptx);

Filen template.pptx blir ikke endret; customized.pptx blir opprettet (eller overskrevet hvis den allerede finnes).


Trinn 5: Lagre til en strøm

Metoden Presentation.Save godtar også en Stream:

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
using var stream = new MemoryStream();
prs.Save(stream, SaveFormat.Pptx);
byte[] pptxBytes = stream.ToArray();
Console.WriteLine($"Size: {pptxBytes.Length} bytes");

Trinn 6: Verifiser resultatet

Etter å ha lagret til en fil, sjekk at den finnes:

var info = new FileInfo("output.pptx");
Console.WriteLine($"Saved: {info.Exists}, size: {info.Length} bytes");

Støttet lagringsformat

FormatEnum-verdiStøttet
PPTX (Office Open XML)SaveFormat.PptxJa
PDFN/ANei
HTMLN/ANei
SVGN/ANei
PNG / JPEGN/ANei
ODP (OpenDocument)N/ANei

Kun PPTX støttes. Formatparameteren blir for øyeblikket ignorert; alle presentasjoner lagres som PPTX uavhengig av den angitte SaveFormat.


Vanlige problemer og løsninger

IOException: The process cannot access the file

Utdatafilen er åpen i et annet program (f.eks. PowerPoint har filen åpen). Lukk filen i andre programmer før du lagrer.

Filen opprettes, men ser tom eller korrupt ut

Sørg for at prs.Save() blir kalt før objektet blir disponert. Etter at Dispose() kjører, vil påfølgende kall mislykkes eller gi korrupt output.

Uventet utdataformat ved lagring

Å sende inn en hvilken som helst SaveFormat-verdi annet enn SaveFormat.Pptx kaster ikke et unntak — formatparameteren blir stille ignorert og filen blir alltid lagret som PPTX. Det finnes ingen NotSupportedException for en ukjent formatverdi.


Ofte stilte spørsmål

Kan jeg lagre til samme fil jeg åpnet?

Ja. Å lagre til samme sti overskriver den opprinnelige filen:

using var prs = new Presentation("deck.pptx");
// modify ...
prs.Save("deck.pptx", SaveFormat.Pptx);  // overwrites original

Bevarer lagring innholdet jeg ikke har endret?

Ja. Ukjente XML-deler fra den opprinnelige filen blir bevart ordrett. Biblioteket serialiserer kun delene av dokumentmodellen det forstår, og sender gjennom all XML den ikke gjenkjenner.


Se også

 Norsk