Question assez simple: J'ai une chaîne contenant du code HTML qui est transmise à un JEditorPane pour la consommation de l'utilisateur. Puis-je joindre un fichier CSS (ou une chaîne contenant des règles CSS) pour permettre un style plus spécifique du texte?Existe-t-il un moyen d'attacher un fichier css à un jEditorPane?
4
A
Répondre
2
Vous ne pouvez pas inclure une balise de style avec le contenu HTML dans setText()
?
par exemple.
jEditorPane.setText("<html><head><style type=\"text/css\">...</style></head><body>...");
4
Le HTMLEditorKit
par défaut recherche un fichier default.css
- Je ne sais pas où, cependant.
Sinon, cela devrait fonctionner:
StyleSheet ss = new StyleSheet();
ss.importStyleSheet(styleSheetURL);
HTMLEditorKit kit = (HTMLEditorKit)jEditorPane.getEditorKit();
kit.setStyleSheet(ss);
Cependant, notez que HTMLEditorKit ne supporte que limited subset CSS 1.
kits de l'éditeur sont en fait partagés entre plusieurs volets de l'éditeur (qui ne semble pas être mentionné dans l'API, mais si vous lisez le code source, vous le verrez.) Donc, ce code changera réellement chaque JEditorPane de l'application, plutôt que celui que vous voulez styler. – Trejkaz