Este artigo contém as etapas e exemplos de código para converter PDF para PPT ou PPTX programaticamente em C#.
O PDF é um dos formatos mais utilizados para a troca de documentos com confiabilidade sem se preocupar com problemas de layout. As apresentações em PowerPoint (PPT/PPTX), por outro lado, facilitaram a apresentação dos dados ou informações na forma de slides interativos. Em alguns casos, as informações contidas em um arquivo PDF precisam ser apresentadas como uma apresentação em PowerPoint. Nesse caso, você pode minimizar os esforços automatizando o processo de importação de informações de PDF para PowerPoint PPT/PPTX.
Para lidar com o cenário acima mencionado, este artigo irá demonstrar como:
- Converta PDF para PowerPoint PPT ou PPTX em C#.
- Converta PDF para PowerPoint PPT ou PPTX com slides como imagens em C#.
- Acompanhe o progresso da conversão de PDF para PowerPoint.
API C# para conversão de PDF para PowerPoint
Para converter PDF para PPT ou PPTX, usaremos Aspose.PDF for .NET, que é uma poderosa API de PDF para criar, processar e converter documentos PDF. O Aspose.PDF para .NET está disponível em NuGet bem como na forma de DLL na seção Downloads.
Converter PDF para PPT ou PPTX em C#
A seguir estão as etapas para converter um arquivo PDF em uma apresentação do PowerPoint usando o Aspose.PDF para .NET.
- Crie um objeto da classe Document.
- Crie um objeto da classe PptxSaveOptions.
- Chame o método Document.Save() para salvar o PDF como PPT ou PPTX.
O exemplo de código a seguir mostra como converter PDF em PPT em C#.
// Carregar documento PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// Salvar arquivo de saída
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
Documento PDF
PowerPoint PPT convertido
Converter PDF para PPT em C# - Renderizando Slides como Imagens
Caso queira evitar texto selecionável na apresentação convertida do PowerPoint, você pode renderizar cada slide como uma imagem. Para isso, você pode definir a propriedade PptxSaveOptions.SlidesAsImages como true e os demais passos permanecerão os mesmos.
O exemplo de código a seguir mostra como converter PDF em PPT com slides como imagens em C#.
// Carregar documento PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.SlidesAsImages = true;
// Salvar arquivo de saída
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
Acompanhe o progresso da conversão de PDF para PPT
Você também pode acompanhar o progresso do processo de conversão de PDF para PPT usando o Aspose.PDF para .NET. As seguintes informações podem ser recuperadas sobre o processo de conversão:
- Progresso total da conversão
- Fim da análise de cada página antes da conversão
- Criação da página de resultados antes da exportação física
- Exportação de cada página de resultados
O exemplo de código a seguir mostra como rastrear a conversão de PDF para PPT em C#.
// Carregar documento PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// Renderizar slides como imagens
pptxOptions.SlidesAsImages = true;
// Acompanhe o progresso no console
pptxOptions.CustomProgressHandler = ShowProgressOnConsole;
// Salvar arquivo de saída
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
//----------------------------------
public static void ShowProgressOnConsole(PptxSaveOptions.ProgressEventHandlerInfo eventInfo)
{
switch (eventInfo.EventType)
{
case ProgressEventType.TotalProgress:
Console.WriteLine(String.Format("{0} - Conversion progress : {1}% .", DateTime.Now.TimeOfDay, eventInfo.Value.ToString()));
break;
case ProgressEventType.ResultPageCreated:
Console.WriteLine(String.Format("{0} - Result page's {1} of {2} layout created.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
break;
case ProgressEventType.ResultPageSaved:
Console.WriteLine(String.Format("{0} - Result page {1} of {2} exported.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
break;
case ProgressEventType.SourcePageAnalysed:
Console.WriteLine(String.Format("{0} - Source page {1} of {2} analyzed.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
break;
default:
break;
}
}
Resultado
Artigos relacionados
- Converter PDF para PowerPoint usando Java
- Converter PDF para Excel em C#
- Converter PDF para Word em C#
Info: Usando suas próprias APIs, a Aspose desenvolveu um serviço online gratuito para converter PDF para PowerPoint.