Получение текущего смещения в HTMLDocument JTextComponent - PullRequest
1 голос
/ 25 января 2011

В приложении Swing я использую JTextPane с бэкэндом HTMLDocument. В какой-то момент я вставляю какие-то заполнители программно в документ с помощью

document.insertString (...)

По какой-то причине, используя

HTMLEditorKit.insertHTML ()

Метод

не позволяет отображать текст в JTextPane.

Что бы я хотел знать это то, какую позицию я вставляю в в документе , то есть в HTML-документе, который написан в фоновом режиме. Я могу сказать

* * JTextPane.getCaretPosition тысячи двадцать-одина () * * тысяча двадцать-две

но это только дает мне смещение в документе, видимом для внешнего интерфейса, а не результирующее.

1 Ответ

1 голос
/ 25 января 2011

Это не имеет смысла, потому что HTML-текст результирующего документа может отличаться. Например. конец строки может быть "\ n" или "\ r \ n" в зависимости от настроек ОС и JVM. HTML пропускает, например, двойные пробелы или пробелы между тегами. Два тега без пробелов между ними и с разрывом строки между ними имеют одинаковое смещение в документе. Вы можете добавить пользовательский тег с определенным идентификатором и выполнить поиск в HTML-тексте итогового документа, чтобы найти его.

...