Kako spremiti prezentacije u .NET-u

Kako spremiti prezentacije u .NET-u

Aspose.Slides FOSS for .NET sprema prezentacije isključivo u format .pptx koristeći prs.Save(path, SaveFormat.Pptx). Ovaj vodič pokriva ispravan obrazac spremanja, spremanje na drugu putanju, spremanje u tok i uobičajene pogreške povezane sa spremanjem.

Vodič korak po korak

Korak 1: Instalirajte paket

dotnet add package Aspose.Slides.Foss

Korak 2: Otvorite ili stvorite prezentaciju

Uvijek koristite izjavu using. Poziv za spremanje mora se dogoditi prije nego što se objekt uništi.

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

Korak 3: Spremi nakon svih izmjena

Postavite poziv Save() nakon što su sve izmjene dovršene, prije nego što using opseg završi.

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

Korak 4: Spremi na drugu putanju

Proslijedite drugačiji put izlaza kako biste stvorili novu datoteku bez izmjene originala:

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

Datoteka template.pptx nije izmijenjena; customized.pptx je stvorena (ili prepisana ako već postoji).


Korak 5: Spremi u tok

Metoda Presentation.Save također prihvaća 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");

Korak 6: Provjeri izlaz

Nakon spremanja u datoteku, provjerite postoji li:

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

Podržani format spremanja

FormatVrijednost enumeracijePodržano
PPTX (Office Open XML)SaveFormat.PptxDa
PDFN/ANe
HTMLN/ANe
SVGN/ANe
PNG / JPEGN/ANe
ODP (OpenDocument)N/ANe

Podržan je samo PPTX. Parametar format trenutno se zanemaruje; sve prezentacije se spremaju kao PPTX bez obzira na navedeni SaveFormat.


Uobičajeni problemi i rješenja

IOException: The process cannot access the file

Izlazna datoteka je otvorena u drugoj aplikaciji (npr. PowerPoint ima otvorenu datoteku). Zatvorite datoteku u drugim aplikacijama prije spremanja.

Datoteka je stvorena, ali izgleda prazna ili oštećena

Osigurajte da se prs.Save() pozove prije nego što se objekt oslobodi. Nakon što Dispose() izvrši, daljnji pozivi će propasti ili proizvesti oštećen izlaz.

Neočekivani format izlaza pri spremanju

Prosljeđivanje bilo koje SaveFormat vrijednosti osim SaveFormat.Pptx ne izaziva iznimku — parametar formata se tiho ignorira i datoteka se uvijek sprema kao PPTX. Ne postoji NotSupportedException za neprepoznatu vrijednost formata.


Često postavljana pitanja

Mogu li spremiti u istu datoteku koju sam otvorio?

Da. Spremanje na istu putanju prepisuje originalnu datoteku:

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

Čuva li spremanje sadržaj koji nisam izmijenio?

Da. Nepoznati XML dijelovi iz originalne datoteke očuvani su doslovno. Biblioteka serijalizira samo dijelove modela dokumenta koje razumije i propušta sve XML‑ove koje ne prepoznaje.


Vidi također

 Hrvatski