Ako uložiť prezentácie v .NET
Aspose.Slides FOSS for .NET ukladá prezentácie výlučne do formátu .pptx 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.
Návod krok za krokom
Krok 1: Nainštalovať balík
dotnet add package Aspose.Slides.FossKrok 2: Otvorte alebo vytvorte prezentáciu
Vždy používajte výrok using. Volanie ukladania musí prebehnúť pred tým, ako je objekt uvoľnený.
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žiť po všetkých úpravách
Umiestnite volanie Save() po dokončení všetkých úprav, pred ukončením rozsahu using.
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žiť na inú cestu
Zadajte inú výstupnú cestu na vytvorenie nového súboru bez úpravy pôvodného:
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
Metóda Presentation.Save tiež prijíma 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
| Formát | Hodnota enumu | Podporované |
|---|---|---|
| PPTX (Office Open XML) | SaveFormat.Pptx | Áno |
| N/A | Nie | |
| HTML | N/A | Nie |
| SVG | N/A | Nie |
| PNG / JPEG | N/A | Nie |
| ODP (OpenDocument) | N/A | Nie |
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 iných aplikáciách pred uložením.
Súbor je vytvorený, ale vyzerá prázdny alebo poškodený
Uistite sa, že prs.Save() je zavolaný pred uvoľnením objektu. Po spustení Dispose() budú nasledujúce volania zlyhávať alebo vytvárať poškodený výstup.
Neočakávaný formát výstupu pri ukladaní
Odovzdanie akejkoľvek hodnoty SaveFormat okrem SaveFormat.Pptx nevyvolá výnimku — parameter formátu je ticho ignorovaný a súbor je vždy uložený ako PPTX. Pre neznámu hodnotu formátu neexistuje NotSupportedException.
Často kladené otázky
Môžem uložiť do rovnakého súboru, ktorý som otvoril?
Áno. Uloženie do rovnakého umiestnenia prepíše pôvodný súbor:
using var prs = new Presentation("deck.pptx");
// modify ...
prs.Save("deck.pptx", SaveFormat.Pptx); // overwrites originalUkladanie zachová obsah, ktorý som neupravil?
Áno. Neznáme časti XML z pôvodného súboru sú zachované doslovne. Knižnica serializuje iba časti modelu dokumentu, ktoré rozumie, a prechádza akékoľvek XML, ktoré nepozná.