Ako uložiť prezentácie v .NET

Ako uložiť prezentácie v .NET

Aspose.Slides FOSS for .NET saves presentations exclusively to .pptx formát pomocou prs.Save(path, SaveFormat.Pptx). Tento sprievodca pokrýva správny vzor ukladania, ukladanie do inej cesty, ukladanie do prúdu a bežné chyby súvisiace s ukladaním.

Postupný návod

Krok 1: Nainštalujte balík

dotnet add package Aspose.Slides.Foss

Krok 2: Otvorte alebo vytvorte prezentáciu

Vždy použite using príkaz. Volanie ukladania musí prebehnúť pred uvoľnením objektu.

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

Krok 3: Uložte po všetkých úpravách

Umiestnite Save() volanie po dokončení všetkých úprav, pred using koncom rozsahu.

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

Krok 4: Uložte na inú cestu

Zadajte inú výstupnú cestu, aby ste vytvorili nový súbor bez úpravy originálu:

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

Súbor template.pptx nie je upravený; customized.pptx je vytvorený (alebo prepísaný, ak už existuje).


Krok 5: Uložiť do prúdu

Táto Presentation.Save metóda tiež akceptuje 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");

Krok 6: Overiť výstup

Po uložení do súboru skontrolujte, či existuje:

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

Podporovaný formát ukladania

FormatEnum ValuePodporované
PPTX (Office Open XML)SaveFormat.PptxÁno
PDFN/ANie
HTMLN/ANie
SVGN/ANie
PNG / JPEGN/ANie
ODP (OpenDocument)N/ANie

Podporovaný je iba PPTX. Parameter formátu je momentálne ignorovaný; všetky prezentácie sa ukladajú ako PPTX bez ohľadu na zadaný SaveFormat.


Bežné problémy a riešenia

IOException: The process cannot access the file

Výstupný súbor je otvorený v inej aplikácii (napr. PowerPoint má súbor otvorený). Zavrite súbor v ostatných aplikáciách pred uložením.

Súbor je vytvorený, ale vyzerá prázdny alebo poškodený

Zabezpečte prs.Save() sa volá pred uvoľnením objektu. Po Dispose() spustí, následné volania zlyhajú alebo vytvoria poškodený výstup.

Neočakávaný formát výstupu pri ukladaní

Odovzdanie akéhokoľvek SaveFormat hodnoty okrem SaveFormat.Pptx nevyvolá výnimku — parameter formátu sa ticho ignoruje a súbor sa vždy uloží ako PPTX. Neexistuje NotSupportedException pre neznámu hodnotu formátu.


Často kladené otázky

Môžem uložiť do toho istého súboru, ktorý som otvoril?

Áno. Uloženie do rovnakej cesty prepíše pôvodný súbor:

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

Ukladanie zachová obsah, ktorý som nezmenil?

Áno. Neznáme XML časti z pôvodného súboru sú zachované presne tak, ako sú. Knižnica serializuje iba časti modelu dokumentu, ktoré rozumie, a ostatné XML, ktoré nepozná, jednoducho prechádza.


Pozri tiež

 Slovenčina