Kuinka tallentaa esitykset .NETissä

Kuinka tallentaa esitykset .NETissä

Aspose.Slides FOSS for .NET tallentaa esitykset yksinomaan .pptx-muotoon käyttäen prs.Save(path, SaveFormat.Pptx). Tämä opas kattaa oikean tallennusmallin, tallentamisen eri polkuun, tallentamisen virtaan ja yleiset tallennukseen liittyvät virheet.

Vaiheittainen opas

Vaihe 1: Asenna paketti

dotnet add package Aspose.Slides.Foss

Vaihe 2: Avaa tai luo esitys

Käytä aina using-lausetta. Tallennuskutsu on suoritettava ennen kuin objekti vapautetaan.

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

Vaihe 3: Tallenna kaikkien muutosten jälkeen

Aseta Save()-kutsu kaikkien muutosten valmistuttua, ennen kuin using-alue päättyy.

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

Vaihe 4: Tallenna eri polkuun

Anna eri tulostuspolku luodaksesi uuden tiedoston muokkaamatta alkuperäistä:

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

template.pptx‑tiedostoa ei muuteta; customized.pptx luodaan (tai ylikirjoitetaan, jos se on jo olemassa).


Vaihe 5: Tallenna virtaan

Presentation.Save-menetelmä hyväksyy myös 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");

Vaihe 6: Vahvista tulos

Kun tiedosto on tallennettu, tarkista että se on olemassa:

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

Tuettu tallennusmuoto

MuotoEnum-arvoTuettu
PPTX (Office Open XML)SaveFormat.PptxKyllä
PDFN/AEi
HTMLN/AEi
SVGN/AEi
PNG / JPEGN/AEi
ODP (OpenDocument)N/AEi

Vain PPTX on tuettu. Muoto‑parametriä nykyään ohitetaan; kaikki esitykset tallennetaan PPTX‑muodossa riippumatta määritetystä SaveFormatista.


Yleisiä ongelmia ja korjauksia

IOException: The process cannot access the file

Tulostetiedosto on avoinna toisessa sovelluksessa (esim. PowerPoint on avannut tiedoston). Sulje tiedosto muissa sovelluksissa ennen tallentamista.

Tiedosto luodaan, mutta se näyttää tyhjältä tai vioittuneelta

Varmista, että prs.Save() kutsutaan ennen kuin objekti vapautetaan. Kun Dispose() on suoritettu, myöhemmät kutsut epäonnistuvat tai tuottavat vioittunutta tulostetta.

Odottamaton tulostusformaatti tallennettaessa

Mikä tahansa SaveFormat arvo, joka ei ole SaveFormat.Pptx, ei aiheuta poikkeusta — formaatti‑parametri jätetään äänettömästi huomiotta ja tiedosto tallennetaan aina PPTX‑muodossa. Tunnistamattomalle formaattiarvolle ei ole NotSupportedException.


Usein kysytyt kysymykset

Voinko tallentaa samaan tiedostoon, jonka avasin?

Kyllä. Tallenna samaan polkuun korvaa alkuperäisen tiedoston:

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

Säilyttääkö tallentaminen sisällön, jota en ole muokannut?

Kyllä. Tuntemattomat XML-osat alkuperäisestä tiedostosta säilytetään kirjaimellisesti. Kirjasto sarjoittaa vain ne osat asiakirjamallista, jotka se ymmärtää, ja ohjaa läpi kaikki XML:t, joita se ei tunnista.


Katso myös

 Suomi