Este artículo contiene los pasos y ejemplos de código para convertir PDF a PPT o PPTX mediante programación en C#.
PDF es uno de los formatos más utilizados para intercambiar documentos con fiabilidad sin preocuparse por los problemas de diseño. Las presentaciones de PowerPoint (PPT/PPTX), por otro lado, han facilitado la presentación de datos o información en forma de diapositivas interactivas. En algunos casos, la información contenida en un archivo PDF debe presentarse como una presentación de PowerPoint. Para tal caso, puede minimizar los esfuerzos al automatizar el proceso de importación de información de PDF a PowerPoint PPT/PPTX.
Para lidiar con el escenario mencionado anteriormente, este artículo demostrará cómo:
- Convierta PDF a PowerPoint PPT o PPTX en C#.
- Convierta PDF a PowerPoint PPT o PPTX con diapositivas como imágenes en C#.
- Realice un seguimiento del progreso de conversión de PDF a PowerPoint.
API de C# para la conversión de PDF a PowerPoint
Para convertir PDF a PPT o PPTX, usaremos Aspose.PDF for .NET, que es una potente API de PDF para crear, procesar y convertir documentos PDF. Aspose.PDF for .NET está disponible en NuGet, así como en forma de DLL en la sección Descargas.
Convierta PDF a PPT o PPTX en C#
Los siguientes son los pasos para convertir un archivo PDF en una presentación de PowerPoint utilizando Aspose.PDF for .NET.
- Cree un objeto de la clase Document.
- Cree un objeto de la clase PptxSaveOptions.
- Llame al método Document.Save() para guardar el PDF como PPT o PPTX.
El siguiente ejemplo de código muestra cómo convertir PDF a PPT en C#.
// Cargar documento PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// Guardar archivo de salida
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
Documento PDF
PowerPoint PPT convertido
Convertir PDF a PPT en C# - Presentación de diapositivas como imágenes
En caso de que desee evitar tener texto seleccionable en la presentación de PowerPoint convertida, puede representar cada diapositiva como una imagen. Para esto, puede establecer la propiedad PptxSaveOptions.SlidesAsImages en verdadero y el resto de los pasos seguirán siendo los mismos.
El siguiente ejemplo de código muestra cómo convertir PDF a PPT con diapositivas como imágenes en C#.
// Cargar documento PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.SlidesAsImages = true;
// Guardar archivo de salida
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
Seguimiento del progreso de conversión de PDF a PPT
También puede realizar un seguimiento del progreso del proceso de conversión de PDF a PPT utilizando Aspose.PDF for .NET. Se puede recuperar la siguiente información sobre el proceso de conversión:
- Progreso total de la conversión
- Fin del análisis de cada página antes de la conversión
- Creación de la página de resultados antes de la exportación física
- Exportación de cada página de resultados
El siguiente ejemplo de código muestra cómo realizar un seguimiento de la conversión de PDF a PPT en C#.
// Cargar documento PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// Renderizar diapositivas como imágenes
pptxOptions.SlidesAsImages = true;
// Seguir el progreso en la consola
pptxOptions.CustomProgressHandler = ShowProgressOnConsole;
// Guardar archivo de salida
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;
}
}
Producción
Artículos relacionados
Información: usando sus propias API, Aspose desarrolló un [servicio en línea gratuito para convertir PDF a PowerPoint] (https://products.aspose.app/slides/import/pdf-to-powerpoint)