Convertir diapositivas de PowerPoint a PNG en JavaScript

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.

Convertir PowerPoint a PNG

Siga estos pasos:

  1. Instanciar la clase Presentation.
  2. Obtener el objeto de diapositiva de la colección devuelta por el método Presentation.getSlides() bajo la clase Slide.
  3. Utilizar el método Slide.getImage() para obtener la miniatura de cada diapositiva.
  4. Utilizar el método IImage.save(String formatName, int imageFormat) para guardar la miniatura de la diapositiva en formato PNG.

Este código JavaScript le muestra cómo convertir una presentación PowerPoint a PNG:

var pres = new aspose.slides.Presentation("pres.pptx");
try {
    for (var index = 0; index < pres.getSlides().size(); index++) {
        var slide = pres.getSlides().get_Item(index);
        var slideImage = slide.getImage();
        try {
            slideImage.save(("image_java_" + index) + ".png", aspose.slides.ImageFormat.Png);
        } finally {
            if (slideImage != null) {
                slideImage.dispose();
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

Convertir PowerPoint a PNG con dimensiones personalizadas

Si desea obtener archivos PNG con una determinada escala, puede establecer los valores de desiredX y desiredY, que determinan las dimensiones de la miniatura resultante.

Este código JavaScript demuestra la operación descrita:

var pres = new aspose.slides.Presentation("pres.pptx");
try {
    var scaleX = 2.0;
    var scaleY = 2.0;
    for (var index = 0; index < pres.getSlides().size(); index++) {
        var slide = pres.getSlides().get_Item(index);
        var slideImage = slide.getImage(scaleX, scaleY);
        try {
            slideImage.save(("image_java_" + index) + ".png", aspose.slides.ImageFormat.Png);
        } finally {
            if (slideImage != null) {
                slideImage.dispose();
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

Convertir PowerPoint a PNG con tamaño personalizado

Si desea obtener archivos PNG con un tamaño determinado, puede pasar los argumentos width y height que prefiera para ImageSize.

Este código le muestra cómo convertir un PowerPoint a PNG especificando el tamaño de las imágenes:

var pres = new aspose.slides.Presentation("pres.pptx");
try {
    var size = java.newInstanceSync("java.awt.Dimension", 960, 720);
    for (var index = 0; index < pres.getSlides().size(); index++) {
        var slide = pres.getSlides().get_Item(index);
        var slideImage = slide.getImage(size);
        try {
            slideImage.save(("image_java_" + index) + ".png", aspose.slides.ImageFormat.Png);
        } finally {
            if (slideImage != null) {
                slideImage.dispose();
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

FAQ

¿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; puede renderizar una forma a una imagen PNG.

¿Se admite la conversión paralela en un servidor?

Sí, pero no comparta una única instancia de presentación entre hilos. Utilice 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.