Como salvar apresentações em .NET

Como salvar apresentações em .NET

Aspose.Slides FOSS para .NET salva apresentações exclusivamente no formato .pptx usando o formato “`prs.Save(path, SaveFormat.Pptx) “) Este guia abrange o padrão de salvamento correto, a conservação em um caminho diferente, na armazenagem num fluxo e erros comuns relacionados com a guarda.

Guia passo a passo

  • Não, não.

Passo 1: Instalar o pacote

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

Passo 2: Abra ou crie uma apresentação

Sempre use uma instrução de “usando”. A chamada de salvamento deve ocorrer antes que o objeto seja descartado.

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

Passo 3: Salvar depois de todas as modificações

Colocar a chamada “Salvar” depois de todas as modificações terem sido completadas, antes do fim do âmbito de utilização.

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

Passo 4: Salve para um caminho diferente

Passe um caminho de saída diferente para criar um novo arquivo sem modificar o original:

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

O ficheiro template.pptx não é modificado; o ficheirão ̋customized.PPtx⌒ é criado (ou substituído se já existir).


Passo 5: Salve para um fluxo de dados

O método Presentation.Save também aceita um ̋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");

Passo 6: Verificar a saída

Depois de salvar para um arquivo, verifique se ele existe:

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

Formatos de salva suportados

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

Apenas o formato PPTX é suportado. O parâmetro de formato é ignorado atualmente; todas as apresentações são salvas como PPtX, independentemente do SaveFormat especificado .


Problemas comuns e soluções

`IOExceção: O processo não pode aceder ao ficheiro

O arquivo de saída está aberto noutra aplicação (por exemplo, o PowerPoint tem o arquivos abertos). Feche o ficheiro noutras aplicações antes de guardar.

O ficheiro foi criado mas parece vazio ou corrompido .

Certifique-se de que o `prs.Save (() ̋ é chamado antes do objeto ser eliminado. Após a execução do ̓Dispose ( (()) ̇, as chamadas subsequentes falharão ou produzirão saída corrompida.

Formatos de saída inesperados ao salvar

Passar qualquer valor SaveFormat que não seja o de ̋SafeFormet.Pptx∂ não lança uma exceção O parâmetro do formato é silenciosamente ignorado e o arquivo sempre é salvo como PPTX. Não há nenhum ゚NotSupportedException∂ para um valor de formato não reconhecido.


Perguntas Frequentes

Posso salvar no mesmo ficheiro que abri?

Salvar para o mesmo caminho sobrepõe o arquivo original:

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

A salvação preserva conteúdo que eu não modifiquei?

Sim. Partes XML desconhecidas do arquivo original são preservadas literalmente. A biblioteca só serializa as partes do modelo de documento que entende e passa por qualquer XML que não reconhece.


Ver também:

  • Como criar apresentações em .NET
  • Como carregar apresentações em .NET
  • Características de um conjunto geral
  • Referência API
  • Aspose.Slides para .NET Base de Conhecimentos Empresariais
 Português