Gérer les polices - API Java PowerPoint

Gérer les propriétés liées aux polices

Pour gérer les propriétés de police d’un paragraphe à l’aide d’Aspose.Slides pour Java :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à la diapositive en utilisant son index.
  3. Accédez aux formes Placeholder dans la diapositive et convertissez-les en AutoShape.
  4. Obtenez le Paragraph du TextFrame exposé par AutoShape.
  5. Justifiez le paragraphe.
  6. Accédez au texte Portion d’un Paragraph.
  7. Définissez la police à l’aide de FontData et définissez la Font de la Portion en conséquence.
    1. Réglez la police en gras.
    2. Réglez la police en italique.
  8. Définissez la couleur de la police en utilisant le FillFormat exposé par l’objet Portion.
  9. Enregistrez la présentation modifiée dans un fichier PPTX.

L’implémentation des étapes ci-dessus est donnée ci-dessous. Elle prend une présentation simple et formate les polices sur l’une des diapositives. Les captures d’écran qui suivent montrent le fichier d’entrée et comment les extraits de code le modifient. Le code change la police, la couleur et le style de police.

todo:image_alt_text
Figure : Le texte dans le fichier d’entrée
todo:image_alt_text
Figure : Le même texte avec une mise en forme mise à jour
// Instancier un objet Presentation qui représente un fichier PPTX
Presentation pres = new Presentation("FontProperties.pptx");
try {
	// Accéder à une diapositive en utilisant sa position de diapositive
	ISlide slide = pres.getSlides().get_Item(0);

	// Accéder au premier et au deuxième espace réservé dans la diapositive et le convertir en AutoShape
	ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
	ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();

	// Accéder au premier paragraphe
	IParagraph para1 = tf1.getParagraphs().get_Item(0);
	IParagraph para2 = tf2.getParagraphs().get_Item(0);

	// Justifier le paragraphe
	para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);

	// Accéder à la première portion
	IPortion port1 = para1.getPortions().get_Item(0);
	IPortion port2 = para2.getPortions().get_Item(0);

	// Définir les nouvelles polices
	FontData fd1 = new FontData("Elephant");
	FontData fd2 = new FontData("Castellar");

	// Attribuer de nouvelles polices à la portion
	port1.getPortionFormat().setLatinFont(fd1);
	port2.getPortionFormat().setLatinFont(fd2);

	// Définir la police en gras
	port1.getPortionFormat().setFontBold(NullableBool.True);
	port2.getPortionFormat().setFontBold(NullableBool.True);

	// Définir la police en italique
	port1.getPortionFormat().setFontItalic(NullableBool.True);
	port2.getPortionFormat().setFontItalic(NullableBool.True);

	// Définir la couleur de la police
	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);

	// Enregistrer le PPTX sur le disque
	pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
	if (pres != null) pres.dispose();
}

Définir les propriétés de police du texte

Pour créer une zone de texte et définir les propriétés de police du texte qui s’y trouve :

  1. Créez une instance de la classe Presentation.
  2. Obtenez la référence d’une diapositive en utilisant son index.
  3. Ajoutez une AutoShape de type Rectangle à la diapositive.
  4. Supprimez le style de remplissage associé à l'AutoShape.
  5. Accédez au TextFrame associé à l'AutoShape.
  6. Ajoutez du texte au TextFrame.
  7. Accédez à l’objet Portion associé au TextFrame.
  8. Définissez la police à utiliser pour le Portion.
  9. Définissez d’autres propriétés de police comme le gras, l’italique, le soulignement, la couleur et la taille en utilisant les propriétés pertinentes exposées par l’objet Portion.
  10. Écrivez la présentation modifiée en tant que fichier PPTX.

L’implémentation des étapes ci-dessus est donnée ci-dessous.

todo:image_alt_text
Figure : Texte avec certaines propriétés de police définies par Aspose.Slides pour Java
// Instancier un objet Presentation qui représente un fichier PPTX
Presentation pres = new Presentation();
try {
	// Obtenir la première diapositive
	ISlide sld = pres.getSlides().get_Item(0);
	
	// Ajouter un AutoShape de type Rectangle
	IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
	
	// Supprimer tout style de remplissage associé à l'AutoShape
	ashp.getFillFormat().setFillType(FillType.NoFill);
	
	// Accéder au TextFrame associé à l'AutoShape
	ITextFrame tf = ashp.getTextFrame();
	tf.setText("Aspose TextBox");
	
	// Accéder à la Portion associée au TextFrame
	IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
	
	// Définir la police pour la Portion
	port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
	
	// Définir la propriété Gras de la police
	port.getPortionFormat().setFontBold(NullableBool.True);
	
	// Définir la propriété Italique de la police
	port.getPortionFormat().setFontItalic(NullableBool.True);
	
	// Définir la propriété Soulignée de la police
	port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
	
	// Définir la hauteur de la police
	port.getPortionFormat().setFontHeight(25);
	
	// Définir la couleur de la police
	port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
	port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
	
	// Enregistrer la présentation sur le disque
	pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
	if (pres != null) pres.dispose();
}