Mesclar arquivos do PowerPoint em C#

A mesclagem de apresentações do PowerPoint pode ser útil em vários cenários, como combinar conteúdo de vários PPT/PPTX, mesclar partes de uma única apresentação criada por duas ou mais pessoas e etc. A maneira manual de copiar/colar o conteúdo pode não ser adequada ao lidar com com várias apresentações. Portanto, este artigo permite que os desenvolvedores do .NET aprendam a mesclar apresentações do PowerPoint programaticamente usando C#.

API de fusão do PowerPoint .NET

Aspose.Slides for .NET é uma API .NET PowerPoint rica em recursos que permite criar e manipular documentos de apresentação. Junto com isso, permite combinar duas ou mais apresentações do PowerPoint usando C# ou VB.NET. Você pode baixar a DLL da API ou instalá-la usando NuGet.

Mesclar apresentações do PowerPoint usando C#

Nesta seção, você aprenderá como clonar e mesclar todos os slides de uma apresentação do PowerPoint para outra. Para isso, você pode simplesmente clonar os slides da apresentação de origem e adicioná-los ao final da apresentação de destino. A seguir estão as etapas para mesclar duas apresentações.

O exemplo de código a seguir mostra como mesclar duas apresentações do PowerPoint usando C#.

// Instanciar um objeto Presentation que representa um arquivo de apresentação de destino
using (Presentation presentation1 = new Presentation("presentation1.pptx"))
{
  // Instanciar um objeto Presentation que representa um arquivo de apresentação de origem
	using (Presentation presentation2 = new Presentation("presentation2.pptx"))
	{
		foreach (ISlide slide in presentation2.Slides)
		{
      // Mesclar slides da origem para o destino 
			presentation1.Slides.AddClone(slide);
		}
	}
  // Salve a apresentação
	presentation1.Save("merged-presentation.pptx", Export.SaveFormat.Pptx);
}

Apresentação do alvo

apresentação em powerpoint alvo

Apresentação da fonte

apresentação do powerpoint de origem a ser mesclada

Apresentação mesclada

mesclar apresentação do PowerPoint C#

Mesclar slides específicos de apresentações do PowerPoint usando C#

No exemplo anterior, você mesclou todos os slides do arquivo PPTX de origem no PPTX de destino. No entanto, pode haver o caso de você precisar mesclar apenas os slides selecionados. Nesse caso, você pode especificar os slides a serem mesclados usando o índice do slide. A seguir estão as etapas para realizar esta operação.

  • Carregue a apresentação de destino usando a classe Apresentação.
  • Carregue a apresentação de origem usando a classe Apresentação.
  • Clone os slides desejados usando o método Presentation1.Slides.AddClone(presentation2.Slides[int Index]).
  • Salve a apresentação mesclada como um novo arquivo PPTX.

O exemplo de código a seguir mostra como mesclar slides específicos de apresentações usando C#.

// Instanciar um objeto Presentation que representa um arquivo de apresentação de destino
using (Presentation presentation1 = new Presentation("presentation1.pptx"))
{
  // Instanciar um objeto Presentation que representa um arquivo de apresentação de origem
	using (Presentation presentation2 = new Presentation("presentation2.pptx"))
	{
		// Mesclar apenas slides pares da apresentação2 (o primeiro slide está no índice 0)
		for (int i = 1; i <= presentation2.Slides.Count; i = i + 2)
		{
			presentation1.Slides.AddClone(presentation2.Slides[i]);
		}
	}
	presentation1.Save("merged-presentation-even.pptx", Export.SaveFormat.Pptx);
}

Apresentação mesclada

apresentação do powerpoint mesclada usando C#

Use o slide mestre ao mesclar apresentações do PowerPoint

Nos dois exemplos anteriores, você mesclou os slides mantendo o design e o modelo da apresentação de origem. No entanto, em certos casos, pode ser necessário modificar o layout dos slides de acordo com a apresentação de destino. Nesses casos, você pode usar o método sobrecarregado [presentation1.Slides.AddClone(presentation2.Slides1, Presentation1.Masters[0], true)]12.

O exemplo de código a seguir mostra como mesclar os slides na apresentação do PowerPoint usando o slide mestre em C#.

// Instanciar um objeto Presentation que representa um arquivo de apresentação de destino
using (Presentation presentation1 = new Presentation("presentation1.pptx"))
{
  // Instanciar um objeto Presentation que representa um arquivo de apresentação de origem
	using (Presentation presentation2 = new Presentation("presentation2.pptx"))
	{
		// Mesclar os dois primeiros slides apenas usando o slide mestre
		presentation1.Slides.AddClone(presentation2.Slides[0], presentation1.Masters[0], true);
		presentation1.Slides.AddClone(presentation2.Slides[1], presentation1.Masters[0], true);
	}
	presentation1.Save("merged-presentation-master.pptx", Export.SaveFormat.Pptx);
}

Apresentação mesclada

apresentação combinada em powerpoint usando C#

Conclusão

Neste artigo, você aprendeu como mesclar duas ou várias apresentações do PowerPoint usando C#. Você pode portar os exemplos de código C# para mesclar apresentações usando VB.NET. Caso você queira explorar mais sobre a API .NET PowerPoint da Aspose, você pode visitar a documentação.

Veja também

Dica: você pode estar interessado em experimentar um aplicativo visualizador da Web para apresentações desenvolvido com as APIs do Aspose.