Bonjour,

J'ai un petit problème avec java 7 et java 8 mais exclusivement sous linux avec la fonte LiberationSans (j'ai essayé avec la font Ubuntu sans rencontrer le problème)

Quand j'utilise une font depuis un fichier TTF pour une zone contenant du html, le texte est obligatoirement en HTML

Le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    try {
        Font font = Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("/tmp/LiberationSans-Regular.ttf"));
 
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JLabel lbl = new JLabel("<html>java version : " + System.getProperty("java.version") + "</html>");
        lbl.setFont(font.deriveFont(18.0f));
        frame.getContentPane().add(lbl);
        frame.pack();
        frame.setVisible(true);
     }
     catch (Throwable ex) {
        ex.printStackTrace();
     }
pour les tests, la police peut se télécharger ici : http://fr.fonts2u.com/liberation-sans-regular.police

Si quelqu'un a une idée de :
  • pourquoi ça ne pose problème que sous linux
  • pourquoi cette police en particulier
  • pourquoi uniquement en mode HTML


les aides pour contourner le problème sont les bienvenues !

Merci d'avance