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.FossVaihe 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
| Muoto | Enum-arvo | Tuettu |
|---|---|---|
| PPTX (Office Open XML) | SaveFormat.Pptx | Kyllä |
| N/A | Ei | |
| HTML | N/A | Ei |
| SVG | N/A | Ei |
| PNG / JPEG | N/A | Ei |
| ODP (OpenDocument) | N/A | Ei |
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 originalSä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.