Convertir diapositivas de PowerPoint a PNG en .NET
Resumen
Este artículo explica cómo convertir una presentación de PowerPoint al formato PNG usando C#. Cubre los siguientes temas.
- Convertir PowerPoint a PNG en C#
- Convertir PPT a PNG en C#
- Convertir PPTX a PNG en C#
- Convertir ODP a PNG en C#
- Convertir diapositiva de PowerPoint a imagen en C#
PowerPoint a PNG en .NET
Para obtener código de ejemplo en C# que convierta PowerPoint a PNG, vea la sección a continuación, es decir, Convertir PowerPoint a PNG. El código puede cargar varios formatos como PPT, PPTX y ODP en el objeto Presentation y luego guardar la miniatura de sus diapositivas en formato PNG. Otras conversiones de PowerPoint a imagen, similares como JPG, BMP, TIFF y SVG, se tratan en los siguientes artículos.
Acerca de la conversión de PowerPoint a PNG
El formato PNG (Portable Network Graphics) no es tan popular como JPEG (Joint Photographic Experts Group), pero sigue siendo muy popular.
Caso de uso: Cuando tienes una imagen compleja y el tamaño no es un problema, PNG es un formato de imagen mejor que JPEG.
Tip
Puede que quieras probar los convertidores gratuitos de Aspose Convertidores de PowerPoint a PNG: PPTX a PNG y PPT a PNG. Son una implementación en vivo del proceso descrito en esta página.Convertir PowerPoint a PNG
Sigue estos pasos:
- Instancia la clase Presentation.
- Obtén el objeto de diapositiva de la colección Presentation.Slides bajo la interfaz ISlide.
- Usa el método ISlide.GetImage para obtener la miniatura de cada diapositiva.
- Usa el método IPresentation.Save(String, SaveFormat, ISaveOptions para guardar la miniatura de la diapositiva en formato PNG.
Este código en C# muestra cómo convertir una presentación de PowerPoint a PNG. El objeto Presentation puede cargar PPT, PPTX, ODP, etc., y luego cada diapositiva del objeto Presentation se convierte al formato PNG u otros formatos de imagen.
using (Presentation pres = new Presentation("pres.pptx"))
{
for (var index = 0; index < pres.Slides.Count; index++)
{
ISlide slide = pres.Slides[index];
using (IImage image = slide.GetImage())
{
image.Save($"slide_{index}.png", ImageFormat.Png);
}
}
}
Convertir PowerPoint a PNG con dimensiones personalizadas
Si deseas obtener archivos PNG con una escala determinada, puedes establecer los valores de desiredX y desiredY, que determinan las dimensiones de la miniatura resultante.
Este código en C# demuestra la operación descrita:
using (Presentation pres = new Presentation("pres.pptx"))
{
float scaleX = 2f;
float scaleY = 2f;
for (var index = 0; index < pres.Slides.Count; index++)
{
ISlide slide = pres.Slides[index];
using (IImage image = slide.GetImage(scaleX, scaleY))
{
image.Save($"slide_{index}.png", ImageFormat.Png);
}
}
}
Convertir PowerPoint a PNG con tamaño personalizado
Si deseas obtener archivos PNG con un tamaño específico, puedes pasar los argumentos width y height que prefieras para imageSize.
Este código muestra cómo convertir un PowerPoint a PNG especificando el tamaño de las imágenes:
using (Presentation pres = new Presentation("pres.pptx"))
{
Size size = new Size(960, 720);
for (var index = 0; index < pres.Slides.Count; index++)
{
ISlide slide = pres.Slides[index];
using (IImage image = slide.GetImage(size))
{
image.Save($"slide_{index}.png", ImageFormat.Png);
}
}
}
Preguntas frecuentes
¿Cómo puedo exportar solo una forma específica (p. ej., gráfico o imagen) en lugar de toda la diapositiva?
Aspose.Slides admite generar miniaturas para formas individuales; puedes renderizar una forma a una imagen PNG.
¿Se admite la conversión paralela en un servidor?
Sí, pero no compartas una única instancia de presentación entre hilos. Utiliza una instancia separada por hilo o proceso.
¿Cuáles son las limitaciones de la versión de prueba al exportar a PNG?
El modo de evaluación añade una marca de agua a las imágenes de salida y aplica otras restricciones hasta que se aplique una licencia.