2012-03-12 1 views
3

Я использовал из StyledDocument, чтобы изменить цвет конкретных слов или разделов в JTextPane.Highlighter vs. StyledDocument of Java Swing для изменения цвета текста в JTextPane

Но тогда я заметил некоторые ответы здесь, где они использовали Highlighter (обычно DefaultHighlighter), чтобы сделать то же самое.

Каковы существенные различия между этими двумя подходами? Каковы некоторые цели, для которых использование highligher лучше, чем манипулирование StyledDocument?

ответ

4

Основное отличие заключается в изменении модели (документа) в первом случае и изменении вида во втором. Если вам нужен только раскрашивающий текст (фон или передний план), лучше использовать маркер. Если атрибуты шрифта изменяют размеры, используйте Document.

Также, если вы хотите сохранить текст со свойствами шрифта, используйте документ.