Gestionar Fuentes - PowerPoint Java API
Gestionar Propiedades Relacionadas con Fuentes
Para gestionar las propiedades de la fuente de un párrafo utilizando Aspose.Slides para Java:
- Crea una instancia de la clase Presentation.
- Obtén la referencia de una diapositiva utilizando su índice.
- Accede a las formas Placeholder en la diapositiva y realízales un typecast a AutoShape.
- Obtén el Paragraph del TextFrame expuesto por AutoShape.
- Justifica el párrafo.
- Accede al Portion de texto de un Paragraph.
- Define la fuente utilizando FontData y establece la Fuente del texto Portion en consecuencia.
- Establece la fuente en negrita.
- Establece la fuente en cursiva.
- Establece el color de la fuente utilizando el FillFormat expuesto por el objeto Portion.
- Guarda la presentación modificada en un archivo PPTX.
La implementación de los pasos anteriores se presenta a continuación. Toma una presentación simple y formatea las fuentes en una de las diapositivas. Las capturas de pantalla que siguen muestran el archivo de entrada y cómo los fragmentos de código lo modifican. El código cambia la fuente, el color y el estilo de la fuente.
![]() |
---|
Figura: El texto en el archivo de entrada |
![]() |
---|
Figura: El mismo texto con formato actualizado |
// Instanciar un objeto Presentation que representa un archivo PPTX
Presentation pres = new Presentation("FontProperties.pptx");
try {
// Accediendo a una diapositiva usando su posición en la diapositiva
ISlide slide = pres.getSlides().get_Item(0);
// Accediendo al primer y segundo placeholder en la diapositiva y realizándole un typecast a AutoShape
ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();
// Accediendo al primer Paragraph
IParagraph para1 = tf1.getParagraphs().get_Item(0);
IParagraph para2 = tf2.getParagraphs().get_Item(0);
// Justificar el párrafo
para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);
// Accediendo al primer portion
IPortion port1 = para1.getPortions().get_Item(0);
IPortion port2 = para2.getPortions().get_Item(0);
// Definir nuevas fuentes
FontData fd1 = new FontData("Elephant");
FontData fd2 = new FontData("Castellar");
// Asignar nuevas fuentes al portion
port1.getPortionFormat().setLatinFont(fd1);
port2.getPortionFormat().setLatinFont(fd2);
// Establecer la fuente en Negrita
port1.getPortionFormat().setFontBold(NullableBool.True);
port2.getPortionFormat().setFontBold(NullableBool.True);
// Establecer la fuente en Cursiva
port1.getPortionFormat().setFontItalic(NullableBool.True);
port2.getPortionFormat().setFontItalic(NullableBool.True);
// Establecer el color de la fuente
port1.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port1.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
port2.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port2.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
// Guardar el PPTX en disco
pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Establecer Propiedades de Fuente de Texto
Para crear un cuadro de texto y establecer propiedades de fuente del texto en él:
- Crea una instancia de la clase Presentation.
- Obtén la referencia de una diapositiva utilizando su índice.
- Agrega un AutoShape del tipo Rectángulo a la diapositiva.
- Elimina el estilo de relleno asociado con el AutoShape.
- Accede al TextFrame del AutoShape.
- Agrega algo de texto al TextFrame.
- Accede al objeto Portion asociado con el TextFrame.
- Define la fuente que se utilizará para el Portion.
- Establece otras propiedades de la fuente como negrita, cursiva, subrayado, color y altura utilizando las propiedades relevantes expuestas por el objeto Portion.
- Escribe la presentación modificada como un archivo PPTX.
La implementación de los pasos anteriores se presenta a continuación.
![]() |
---|
Figura: Texto con algunas propiedades de fuente establecidas por Aspose.Slides para Java |
// Instanciar un objeto Presentation que representa un archivo PPTX
Presentation pres = new Presentation();
try {
// Obtener la primera diapositiva
ISlide sld = pres.getSlides().get_Item(0);
// Agregar un AutoShape de tipo Rectángulo
IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
// Eliminar cualquier estilo de relleno asociado con el AutoShape
ashp.getFillFormat().setFillType(FillType.NoFill);
// Acceder al TextFrame asociado con el AutoShape
ITextFrame tf = ashp.getTextFrame();
tf.setText("Aspose TextBox");
// Acceder al Portion asociado con el TextFrame
IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
// Establecer la Fuente para el Portion
port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
// Establecer la propiedad Negrita de la Fuente
port.getPortionFormat().setFontBold(NullableBool.True);
// Establecer la propiedad Cursiva de la Fuente
port.getPortionFormat().setFontItalic(NullableBool.True);
// Establecer la propiedad Subrayado de la Fuente
port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
// Establecer la Altura de la Fuente
port.getPortionFormat().setFontHeight(25);
// Establecer el color de la Fuente
port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Guardar la presentación en disco
pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}