Jak uložit prezentaci v .NET

Jak uložit prezentaci v .NET

Aspose.Slides FOSS pro .NET ukládá prezentace výhradně do formátu .pptx pomocí ⌒prs.Save(path, SaveFormat.Pptx)` Tento průvodce pokrývá správný vzor ukladaní, ukládaní na jinou cestu, uložení do proudu a běžné chyby související s ukladením.

Krok za krokem

Vypadá to jako…

Krok 1: Nainstalujte balíček

aspose-slides-foss/slides is not yet published — build from source until it ships. See the project README for build instructions.


Krok 2: Otevřít nebo vytvořit prezentaci

Vždy použijte using prohlášení. Zachraňovací volání musí proběhnout před odstranění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žení po všech úpravách

Po dokončení všech změn, před ukončením rozsahu použití, se použije volba Save().

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žit jinou cestu

Pro vytvoření nového souboru bez úpravy originálu přejděte jinou výstupní cestu:

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

Soubor template.pptx není upraven; je vytvořen (nebo přepsán, pokud již existuje).


Krok 5: Uložit do proudu

Metodou Presentation.Save je rovněž přijat ̋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: Ověřte výsledek

Po uložení do souboru zkontrolujte, zda existuje:

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

Podporovaný formát uložení

FormatEnum ValueSupported
PPTX (Office Open XML)SaveFormat.PptxYes
PDFN/ANo
HTMLN/ANo
SVGN/ANo
PNG / JPEGN/ANo
ODP (OpenDocument)N/ANo

Pouze PPTX je podporován. Parametr formátu je v současné době ignorován; všechny prezentace jsou uloženy jako PPtX bez ohledu na specifikovaný SaveFormat .


Obvyklé problémy a řešení

`IOVýjimka: Proces nemůže přistupovat k souboru

Výstupní soubor je otevřen v jiné aplikaci (např. PowerPoint má soubory otevřené). Před uložením uzavřete souboru v jiných aplikacích.

Soubor byl vytvořen, ale je prázdný nebo poškozený .

Zabezpečit, že `prs.Save (() ̋ je volán před odstraněním objektu. Po spuštění aplikace ∂Dispose (∂)) ̨ budou následné hovory selhat nebo vyvolat zkažený výstup.

Nečekaný výstupní formát při ukládání

Přenášení jakékoli jiné hodnoty SaveFormat než ̋SafeFormet.Pptx∂ nevyvolá výjimku parametr formátu je tiše ignorován a soubor se vždy uloží jako PPTX. Pro hodnotu neznámavého formatu neexistuje žádná hodnota ゚NotSupportedException∂.


Časté otázky

Můžu si uložit ten samý soubor, co jsem otevřel?

Uložení stejné cesty přepíše originální soubor:

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

Zachovává uložení obsah, který jsem nezměnil?

Ano. Neznámé části XML z originálního souboru jsou doslova uchovávány. Knihovna sériově sestavuje pouze ty části dokumentu, které chápe a prochází všemi částmi XML, která nepozná.


Viz také:

  • Jak vytvořit prezentace v .NET
  • Jak načítat prezentace v .NET
  • Přehled funkcí
  • Odkaz na API
 Čeština