generar miniaturas PPTX en C#

Miniaturas se utilizan comúnmente para crear versiones de tamaño pequeño de las imágenes más grandes. Hacen que sea más fácil mirar o desplazarse por la lista de imágenes. MS PowerPoint también le proporciona las miniaturas de las diapositivas de una presentación. Usando las miniaturas de las diapositivas, puede recorrer fácilmente la presentación y navegar a una diapositiva en particular. En este artículo, aprenderá cómo generar miniaturas de PowerPoint PPTX o PPT usando C#. Esto podría ser útil en escenarios como cuando necesita crear su propio visor de PowerPoint basado en la web o en el escritorio.

.NET API para generar miniaturas para PowerPoint PPTX/PPT

Para generar miniaturas para presentaciones PPTX o PPT, usaremos Aspose.Slides for .NET. Es una poderosa API que le permite crear y manipular documentos de PowerPoint y OpenOffice. Además, te permite convertir presentaciones a otros formatos de archivo. Puede descargar la API o instalarla mediante NuGet.

PM> Install-Package Aspose.Slides.NET

Genere miniaturas para PPTX o PPT usando C#

Los siguientes son los pasos para generar miniaturas de una presentación PPTX usando C#.

  1. Primero, cree una instancia de la clase Presentation para cargar la presentación.
  2. Recorra cada ISlide en la colección Presentation.Slides.
  3. Genere una miniatura de cada diapositiva usando el método ISlide.GetThumbnail(1f, 1f) y obtenga la referencia de la miniatura en un objeto Bitmap.
  4. Finalmente, guarde la miniatura en el formato de imagen deseado usando el método Bitmap.Save(String, System.Drawing.Imaging.ImageFormat).

El siguiente ejemplo de código muestra cómo generar miniaturas de una presentación PPTX usando C#.

// Cargar presentación de PowerPoint
using (Presentation pres = new Presentation("presentation.pptx"))
{
    foreach (ISlide sld in pres.Slides)
    {
        // Crear una imagen a escala completa
        Bitmap bmp = sld.GetThumbnail(1f, 1f);

        // Guarde la imagen en el disco en formato JPEG
        bmp.Save(String.Format("slide_{0}.jpg", sld.SlideNumber), System.Drawing.Imaging.ImageFormat.Jpeg);
    }
}

Genere miniaturas con dimensiones definidas por el usuario

También puede personalizar las dimensiones de las miniaturas según sus necesidades. Esto se puede lograr usando las propiedades Presentation.SlideSize.Size.Width y Presentation.SlideSize.Size.Height. Los siguientes son los pasos para realizar esta operación.

  1. Primero, cree una instancia de la clase Presentation para cargar la presentación.
  2. Luego, establezca las dimensiones deseadas de las miniaturas y escale los valores usando las propiedades Ancho y Alto.
  3. Recorra cada ISlide en la colección Presentation.Slides.
  4. Genere una miniatura de cada diapositiva usando el método ISlide.GetThumbnail(Single, Single) y obtenga la referencia de la miniatura en un objeto Bitmap.
  5. Finalmente, guarde la miniatura en el formato de imagen deseado usando el método Bitmap.Save(String, System.Drawing.Imaging.ImageFormat).

El siguiente ejemplo de código muestra cómo generar miniaturas de un PPTX con dimensiones personalizadas.

// Cargar presentación de PowerPoint
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // Dimensión definida por el usuario
    int desiredX = 1200;
    int desiredY = 800;

    // Obtener el valor escalado de X e Y
    float ScaleX = (float)(1.0 / pres.SlideSize.Size.Width) * desiredX;
    float ScaleY = (float)(1.0 / pres.SlideSize.Size.Height) * desiredY;

    foreach (ISlide sld in pres.Slides)
    {
        // Crear una imagen a escala completa
        Bitmap bmp = sld.GetThumbnail(ScaleX, ScaleY);

        // Guarde la imagen en el disco en formato JPEG
        bmp.Save(String.Format("slide_{0}.jpg", sld.SlideNumber), System.Drawing.Imaging.ImageFormat.Jpeg);
    }
}

Obtenga una licencia de API gratuita

Puede usar Aspose.Slides for .NET sin limitaciones de evaluación solicitando una licencia temporal.

Conclusión

En este artículo, ha aprendido a generar miniaturas de PowerPoint PPTX o PPT usando C#. Además, ha visto cómo generar miniaturas con las dimensiones deseadas. Además, puede visitar la documentación para explorar otras características de la API. Además, no dude en comunicarnos sus consultas a través de nuestro foro.

Ver también