Com guardar presentacions en .NET

Com guardar presentacions en .NET

FOSS per a .NET guarda presentacions exclusivament en format .pptx utilitzant el formate ⌒prs.Save(path, SaveFormat.Pptx)` Aquesta guia cobreix el patró de salva correcta, l’enregistrament d’una ruta diferent, la conservació d’un flux i els errors comuns relacionats amb l’enregistrament.

Guia pas a pas

Pas 1: Instal·lar el paquet

dotnet add package Aspose.Slides.Foss

Pas 2: Obrir o crear una presentació

Sempre utilitzeu una instrucció using. La crida de salvament ha d’ocorrer abans que l’objecte es elimini.

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

Pas 3: Salvar després de totes les modificacions

Posar la crida `Save (() ̋ després que s’hagin completat totes les modificacions, abans de finalitzar l’abast d’ús del ̓.

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

Pas 4: Salvar per un camí diferent

Passa una ruta de sortida diferent per crear un nou fitxer sense modificar l’original:

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

El fitxer template.pptx no es modifica; s’ha de crear (o sobrescriure si ja existeix).


Pas 5: Salvar a un flux

El mètode Presentation.Save també accepta un ̋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");

Pas 6: Verificar la sortida

Després d’estalviar en un fitxer, comprova que existeix:

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

Format de conservació compatible

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

Només es dóna suport a PPTX. El paràmetre de format és ignorat actualment; totes les presentacions s’alenen com aPPTx independentment del SaveFormat especificat.


Problemes i solucions comuns

`IOExcepció: El procés no pot accedir al fitxer

El fitxer de sortida està obert en una altra aplicació (per exemple, PowerPoint té el fitxatge oberte). Tanca el fichier en altres aplicacions abans d’estalviar.

Es va crear un fitxer però sembla buit o corrompt.

Assegurar que `prs.Save (() ̋ s’aplicï abans de disposar l’objecte. Després d’executar la crida ̓Dispose ( (()) ̇, les futures trucades fallaran o produeixen sortida corrompuda.

Format d’aparició inesperat en l’enregistrament

Passar qualsevol valor SaveFormat diferent de ̋SafeFormet.Pptx⌒ no genera una excepció el paràmetre del format és ignorat en silenci i el fitxer sempre s’emmagatzema com PPTX. No hi ha cap ∂NotSupportedException∂ per a un valor de format no reconegut.


Preguntas freqüents

Puc guardar al mateix fitxer que vaig obrir?

Si s’emporta en la mateixa ruta es sobrescriu el fitxer original:

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

L’enregistrament conserva el contingut que no he modificat?

Sí. Les parts XML desconegudes del fitxer original es conserven literalment. La biblioteca només serialitza les parts del model de document que entén, i passa a través de qualsevol XML que no reconeix.


Veure també

  • Com crear presentacions en .NET
  • Com carregar presentacions en .NET
  • Característiques de la seva visió general
  • Referència a l’API
 Català