Bonjour,

J'ai un JLabel dans lequel j'utilise la mise en forme HTML pour mettre de la couleur dans mon texte (couleur NON uniforme du texte)

ex :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
JLabel label = new JLabel("<html><body>font color='blue'>bonjour</font> tout le <font color='red'>monde</font></body></html>);
J'y applique ensuite une font (police) personnalisée que je charge dynamiquement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
InputStream inputFont = this.getClass().getResourceAsStream("ma_font.ttf");
Font font = Font.createFont(Font.TRUETYPE_FONT, inputFont);
MY_FONT = font.deriveFont(24f);
 
label.setFont(MY_FONT);
Mon problème est le suivant :

Quand je fais ça, la police n'est pas prise en compte (sûrement à cause des balises HTML). C'est à dire que je vois pendant un bref instant ma police perso, et dès que le HTML est traité, la police par défaut revient. J'ai essayé de remplacer les <font> par <span>, même effet)

Dès que j'enlève le HTML de mon JLabel et que je fais simplement new JLabel("plop") et que j'applique la font, je n'ai aucun problème et ma font perso est utilisée.


Le problème est que je veux ma font perso ET la mise en couleur de certains éléments.

Savez-vous comment faire ?

J'espère avoir été assez clair,
Merci d'avance