Gérer les polices dans les présentations avec Java
Contents
[
Hide
]
Gérer les propriétés liées aux polices
Les présentations contiennent généralement à la fois du texte et des images. Le texte peut être formaté de diverses manières, soit pour mettre en évidence des sections et des mots spécifiques, soit pour se conformer aux styles d’entreprise. Le formatage du texte aide les utilisateurs à varier l’aspect du contenu de la présentation. Cet article montre comment utiliser Aspose.Slides for Java pour configurer les propriétés de police des paragraphes de texte sur les diapositives.
Pour gérer les propriétés de police d’un paragraphe à l’aide d’Aspose.Slides for Java :
- Créer une instance de la classe Presentation.
- Obtenir la référence d’une diapositive en utilisant son index.
- Accéder aux formes Placeholder de la diapositive et les convertir en AutoShape.
- Obtenir le Paragraph depuis le TextFrame exposé par AutoShape.
- Justifier le paragraphe.
- Accéder à la Portion de texte d’un Paragraph.
- Définir la police à l’aide de FontData et définir la Font de la Portion de texte en conséquence.
- Mettre la police en gras.
- Mettre la police en italique.
- Définir la couleur de la police en utilisant le FillFormat exposé par l’objet Portion.
- Enregistrer la présentation modifiée dans un fichier PPTX.
L’implémentation des étapes ci‑dessus est fournie ci‑dessous. Elle prend une présentation non modifiée et formate les polices sur l’une des diapositives. Les captures d’écran suivantes montrent le fichier d’entrée et la façon dont les extraits de code le modifient. Le code modifie la police, la couleur et le style de la police.
![]() |
|---|
| Figure : Le texte dans le fichier d’entrée |
![]() |
|---|
| Figure : Le même texte avec un formatage mis à 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
ISlide slide = pres.getSlides().get_Item(0);
// Accéder aux premier et deuxième espaces réservés dans la diapositive et les 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 de nouvelles polices
FontData fd1 = new FontData("Elephant");
FontData fd2 = new FontData("Castellar");
// Assigner de nouvelles polices à la portion
port1.getPortionFormat().setLatinFont(fd1);
port2.getPortionFormat().setLatinFont(fd2);
// Mettre la police en gras
port1.getPortionFormat().setFontBold(NullableBool.True);
port2.getPortionFormat().setFontBold(NullableBool.True);
// Mettre 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
Comme indiqué dans Gérer les propriétés liées aux polices, une Portion est utilisée pour contenir du texte avec un style de formatage similaire dans un paragraphe. Cet article montre comment utiliser Aspose.Slides for Java pour créer une zone de texte contenant du texte, puis définir une police particulière ainsi que diverses autres propriétés de la catégorie de famille de police.
Pour créer une zone de texte et définir les propriétés de police du texte qu’elle contient :
- Créer une instance de la classe Presentation.
- Obtenir la référence d’une diapositive en utilisant son index.
- Ajouter un AutoShape du type Rectangle à la diapositive.
- Supprimer le style de remplissage associé à l’AutoShape.
- Accéder au TextFrame de l’AutoShape.
- Ajouter du texte au TextFrame.
- Accéder à l’objet Portion associé au TextFrame.
- Définir la police à utiliser pour la Portion.
- Définir d’autres propriétés de police telles que gras, italique, souligné, couleur et hauteur en utilisant les propriétés pertinentes exposées par l’objet Portion.
- Enregistrer la présentation modifiée dans un fichier PPTX.
L’implémentation des étapes ci‑dessus est fournie ci‑dessous.
![]() |
|---|
| Figure : Texte avec certaines propriétés de police définies par Aspose.Slides for Java |
// Instancier un objet Presentation qui représente un fichier PPTX
Presentation pres = new Presentation();
try {
// Récupérer 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é 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();
}


