Crear miniaturas de formas de presentación en .NET
Aspose.Slides for .NET se utiliza para crear archivos de presentación donde cada página es una diapositiva. Estas diapositivas pueden verse al abrir los archivos de presentación con Microsoft PowerPoint. Pero a veces, los desarrolladores pueden necesitar ver las imágenes de las formas por separado en un visor de imágenes. En esos casos, Aspose.Slides for .NET le ayuda a generar imágenes en miniatura de las formas de la diapositiva. Cómo usar esta característica se describe en este artículo. Este artículo explica cómo generar miniaturas de diapositivas de diferentes maneras:
- Generar una miniatura de forma dentro de una diapositiva.
- Generar una miniatura de forma para una forma de diapositiva con dimensiones definidas por el usuario.
- Generar una miniatura de forma dentro de los límites de la apariencia de una forma.
- Generar una miniatura del nodo hijo de SmartArt.
Generar una miniatura de forma a partir de una diapositiva
Para generar una miniatura de forma a partir de cualquier diapositiva usando Aspose.Slides for .NET:
- Cree una instancia de la clase Presentation.
- Obtenga la referencia de cualquier diapositiva usando su ID o índice.
- Obtenga la imagen en miniatura de la forma de la diapositiva referenciada con la escala predeterminada.
- Guarde la imagen en miniatura en el formato de imagen que desee.
El siguiente ejemplo genera una miniatura de forma.
using (Presentation presentation = new Presentation("HelloWorld.pptx"))
{
IShape shape = presentation.Slides[0].Shapes[0];
using (IImage image = shape.GetImage())
{
image.Save("Shape_thumbnail_out.png", ImageFormat.Png);
}
}
Generar una miniatura con factor de escala definido por el usuario
Para generar la miniatura de forma de cualquier forma de diapositiva usando Aspose.Slides for .NET:
- Cree una instancia de la clase
Presentation. - Obtenga la referencia de cualquier diapositiva usando su ID o índice.
- Obtenga la imagen en miniatura de la diapositiva referenciada con los límites de la forma.
- Guarde la imagen en miniatura en el formato de imagen que desee.
El siguiente ejemplo genera una miniatura usando un factor de escala definido por el usuario.
ShapeThumbnailBounds bounds = ShapeThumbnailBounds.Shape;
float scale = 1; // Escalado en los ejes X e Y.
using (Presentation presentation = new Presentation("HelloWorld.pptx"))
{
IShape shape = presentation.Slides[0].Shapes[0];
using (IImage image = shape.GetImage(bounds, scale, scale))
{
image.Save("Scaling Factor Thumbnail_out.png", ImageFormat.Png);
}
}
Crear una miniatura de apariencia de forma basada en límites
Este método para crear miniaturas de formas permite a los desarrolladores generar una miniatura dentro de los límites de la apariencia de la forma. Tiene en cuenta todos los efectos de la forma. La miniatura de forma generada está restringida por los límites de la diapositiva. Para generar una miniatura de cualquier forma de diapositiva dentro de los límites de su apariencia, use el siguiente código de ejemplo:
- Cree una instancia de la clase
Presentation. - Obtenga la referencia de cualquier diapositiva usando su ID o índice.
- Obtenga la imagen en miniatura de la diapositiva referenciada con los límites de la forma como apariencia.
- Guarde la imagen en miniatura en el formato de imagen que desee.
El siguiente ejemplo crea una miniatura usando un factor de escala definido por el usuario.
ShapeThumbnailBounds bounds = ShapeThumbnailBounds.Appearance;
float scale = 1; // Escalado en los ejes X e Y.
using (Presentation presentation = new Presentation("HelloWorld.pptx"))
{
IShape shape = presentation.Slides[0].Shapes[0];
using (IImage image = shape.GetImage(bounds, scale, scale))
{
image.Save("Shape_thumbnail_Bound_Shape_out.png", ImageFormat.Png);
}
}
FAQ
¿Qué formatos de imagen se pueden usar al guardar miniaturas de forma?
PNG, JPEG, BMP, GIF, TIFF, y otros. Las formas también pueden exportarse como SVG vectorial guardando el contenido de la forma como SVG.
¿Cuál es la diferencia entre los límites Shape y Appearance al renderizar una miniatura?
Shape utiliza la geometría de la forma; Appearance tiene en cuenta los efectos visuales (sombras, brillos, etc.).
¿Qué ocurre si una forma está marcada como oculta? ¿Se seguirá renderizando como miniatura?
Una forma oculta sigue formando parte del modelo y puede renderizarse; la marca oculta afecta la visualización de la presentación pero no impide generar la imagen de la forma.
¿Se admiten formas agrupadas, gráficos, SmartArt y otros objetos complejos?
Sí. Cualquier objeto representado como Shape (incluyendo GroupShape, Chart, y SmartArt) puede guardarse como miniatura o como SVG.
¿Afectan las fuentes instaladas en el sistema la calidad de las miniaturas de formas de texto?
Sí. Debe proveer las fuentes requeridas (o configurar sustituciones de fuentes) para evitar sustituciones indeseadas y reflujo de texto.