Gérer les polices - API Java PowerPoint
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. La mise en forme du texte aide les utilisateurs à varier l’apparence et la sensation du contenu de la présentation. Cet article montre comment utiliser Aspose.Slides pour 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 pour Java :
- Créez une instance de la classe Presentation.
- Obtenez une référence à la diapositive en utilisant son index.
- Accédez aux formes Placeholder dans la diapositive et convertissez-les en AutoShape.
- Obtenez le Paragraph du TextFrame exposé par AutoShape.
- Justifiez le paragraphe.
- Accédez au texte Portion d’un Paragraph.
- Définissez la police à l’aide de FontData et définissez la Font de la Portion en conséquence.
- Réglez la police en gras.
- Réglez la police en italique.
- Définissez la couleur de la police en utilisant le FillFormat exposé par l’objet Portion.
- 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.
Figure : Le texte dans le fichier d’entrée |
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
Comme mentionné 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 pour Java pour créer une zone de texte avec du texte, puis définir une police particulière et diverses autres propriétés de la famille de polices.
Pour créer une zone de texte et définir les propriétés de police du texte qui s’y trouve :
- Créez une instance de la classe Presentation.
- Obtenez la référence d’une diapositive en utilisant son index.
- Ajoutez une AutoShape de type Rectangle à la diapositive.
- Supprimez le style de remplissage associé à l'AutoShape.
- Accédez au TextFrame associé à l'AutoShape.
- Ajoutez du texte au TextFrame.
- Accédez à l’objet Portion associé au TextFrame.
- Définissez la police à utiliser pour le Portion.
- 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.
- Écrivez la présentation modifiée en tant que fichier PPTX.
L’implémentation des étapes ci-dessus est donnée ci-dessous.
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();
}