Axel Richter: JEditorPane bleibt von setFont unbeeindruckt?

Beitrag lesen

Hallo,

danke, so hat es geklappt. Darauf wäre ich sowieso nicht gekommen, denn wieso wird der Hintergrund mit setBackground gesetzt, die Schrift jedoch mit einem extra erstellten Stylesheet?

[JEditorPane].setBackground setzt den Hintergrund der pane (Glasscheibe) auf der dann das StyledDocument HTMLDocument dargestellt wird. Solange das Root-Element des Documents transparent ist, sieht man den Hintergrund der pane durch. [JEditorPane].setFont setzt den font der pane, also solcher Texte, die direkt auf die pane geschrieben werden. Dein Text steht aber in einem HTMLDocument, welches über ein HTMLEditorKit bearbeitet werden kann. Dieses EditorKit kann mit setFont nicht umgehen, weil nicht klar ist, für welches HTML-Element (HTML, BODY, P, H1 ...) das setFont gelten soll.

Du kannst übrigens auch das setBackground durch

  
...  
css.addRule("BODY { background-color: #F1F6FF; }");  
...

ersetzen. Eventuell kann auch der Selector HTML verwendet werden (ausprobieren! ;-)).

viele Grüße

Axel