Gérer les portions de texte dans les présentations avec Java
Obtenir les coordonnées d’une portion de texte
La méthode getCoordinates() a été ajoutée aux classes IPortion et Portion qui permet de récupérer les coordonnées du début de la portion.
// Instancier la classe Presentation qui représente le PPTX
Presentation pres = new Presentation();
try {
// Remodeler le contexte de la présentation
IAutoShape shape = (IAutoShape) pres.getSlides().get_Item(0).getShapes().get_Item(0);
ITextFrame textFrame = (ITextFrame) shape.getTextFrame();
for (IParagraph paragraph : textFrame.getParagraphs())
{
for (IPortion portion : paragraph.getPortions())
{
Point2D.Float point = portion.getCoordinates();
System.out.println("X: " + point.x + " Y: " + point.y);
}
}
} finally {
if (pres != null) pres.dispose();
}
FAQ
Puis-je appliquer un hyperlien à seulement une partie du texte dans un même paragraphe?
Oui, vous pouvez assigner un hyperlien à une portion individuelle ; seul ce fragment sera cliquable, pas le paragraphe entier.
Comment fonctionne l’héritage de style : qu’est-ce qu’une Portion surcharge, et qu’est-ce qui provient du Paragraph/TextFrame?
Les propriétés au niveau de la Portion ont la priorité la plus élevée. Si une propriété n’est pas définie sur la Portion, le moteur la récupère depuis le Paragraph ; si elle n’est pas non plus définie là, depuis le TextFrame ou le style du theme.
Que se passe-t-il si la police spécifiée pour une Portion est manquante sur la machine/serveur cible?
Les règles de substitution de police s’appliquent. Le texte peut se reformater : les métriques, la césure et la largeur peuvent changer, ce qui est important pour un positionnement précis.
Puis-je définir une transparence ou un dégradé de remplissage du texte spécifique à une Portion, indépendamment du reste du paragraphe?
Oui, la couleur du texte, le remplissage et la transparence au niveau de la Portion peuvent différer des fragments voisins.