Я пытаюсь понять назначение элемента и как оно может помочь с манипулированием StyledDocument , которое должно отображаться в JEditorPane или JTextPane. Я также пытаюсь понять, как это связано с понятием «параграф».
Javadoc для javax.swing.text.Element почти ничего:
открытый интерфейс Элемент
Интерфейс для описания структурной части документа. Он предназначен, чтобы уловить дух элемента SGML.
Я очень хорошо знаком с концепцией элемента в HTML и XML, и, очевидно, это что-то похожее, но я просто не вижу его цели в отношении StyledDocument. Сначала я подумал, что это просто что-то, что StyledDocument использовал внутри для управления точками остановки и начала различных стилей, но потом я увидел в Интернете примеры кода, где они использовали экземпляры Element.
У меня уже есть своя собственная древовидная структура данных, которые мне нужно отображать в разных шрифтах и цветах, и при ее обходе я скажу, где изменить шрифт или цвет по мере необходимости. Похоже, я смогу удовлетворить насущную потребность с помощью серии вызовов StyledDocument.setCharacterAttributes и setParagraphAttributes , не касаясь элемента самостоятельно.
Но у меня складывается впечатление, что использование Element будет более эффективным или более чистым. Пожалуйста, помогите мне получить правильное понимание Элемента и того, как он помогает с StyledDocument и концепцией параграфа, поэтому даже если я не использую какие-либо Элементы прямо сейчас, я по крайней мере оценю то, что мне не хватает, и знаю, если и как использовать его для следующей аналогичной ситуации.