Kuinka tallentaa esitykset .NET:ssa

Kuinka tallentaa esitykset .NET:ssa

Aspose.Slides FOSS for .NET saves presentations exclusively to .pptx formaattia 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 sen jälkeen, kun kaikki muutokset on tehty, 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 uusi tiedosto muuttamatta alkuperäistä:

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

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


Vaihe 5: Tallenna virtaan

Metodi Presentation.Save metodi 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

Tallennuksen jälkeen tiedostoon, tarkista että se on olemassa:

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

Tuettu tallennusmuoto

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

Vain PPTX on tuettu. Formaatti‑parametriä ohitetaan tällä hetkellä; kaikki esitykset tallennetaan PPTX-muodossa riippumatta määritetystä SaveFormatista.


Yleisiä ongelmia ja korjauksia

IOException: The process cannot access the file

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

Tiedosto on luotu, mutta se näyttää tyhjältä tai vioittuneelta

Varmista prs.Save() kutsutaan ennen kuin objekti on vapautettu. Tämän jälkeen Dispose() suoritetaan, myöhemmät kutsut epäonnistuvat tai tuottavat vioittunutta tulostetta.

Odottamaton tulostusformaatti tallennettaessa

Minkä tahansa SaveFormat arvo kuin SaveFormat.Pptx ei heitä poikkeusta — formaatti‑parametri jätetään hiljaisesti huomiotta ja tiedosto tallennetaan aina PPTX‑muodossa. Ei ole NotSupportedException tunnistamattomalle formaattiarvolle.


Usein kysytyt kysymykset

Voinko tallentaa samaan tiedostoon, jonka avasin?

Kyllä. Tallentaminen 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ö tallennus sisällön, jota en ole muokannut?

Kyllä. Alkuperäisen tiedoston tuntemattomat XML-osat säilytetään tarkalleen sellaisina kuin ne ovat. Kirjasto sarjoittaa vain ne dokumenttimallin osat, jotka se ymmärtää, ja ohjaa läpi kaikki XML, jota se ei tunnista.


Katso myös

 Suomi