Есть ли способ прикрепить файл css к jEditorPane?

Достаточно простой вопрос: у меня есть строка, содержащая HTML, которая передается в JEditorPane для использования пользователем.

Могу ли я прикрепить файл CSS (или строку, содержащую правила CSS), чтобы обеспечить более точное оформление текста?


person Electrons_Ahoy    schedule 17.09.2009    source источник


Ответы (2)


HTMLEditorKit по умолчанию ищет файл default.css - хотя я не уверен, где именно.

В качестве альтернативы это должно работать:

StyleSheet ss = new StyleSheet();
ss.importStyleSheet(styleSheetURL);
HTMLEditorKit kit = (HTMLEditorKit)jEditorPane.getEditorKit();
kit.setStyleSheet(ss);

Однако обратите внимание, что HTMLEditorKit поддерживает только ограниченное подмножество CSS 1.

person Michael Borgwardt    schedule 23.09.2009
comment
Наборы редакторов на самом деле совместно используются несколькими панелями редактора (что не упоминается в API, но если вы прочитаете исходный код, вы увидите это). Таким образом, этот код фактически изменит каждую панель JEditorPane в приложении, а не тот, который вы хотите стилизовать. - person Trejkaz; 22.03.2011

Разве вы не можете просто включить тег стиля вместе с содержимым HTML в setText()?

e.g.

jEditorPane.setText( "<html><head><style type=\"text/css\">...</style></head><body>...");
person pstanton    schedule 23.09.2009