Как мне остановить JEditorPane от автоматического отступа последующего текста? - PullRequest
0 голосов
/ 03 мая 2018

Моя программа загружает файл RTF и отображает его в JEditorPane со следующим кодом:

    public void ReadFile() {
        RTFEditorKit rtfKit = new RTFEditorKit();
        StyledDocument doc = (StyledDocument) rtfKit.createDefaultDocument();
        rcp.getJEditorPane().setEditorKit(rtfKit);

        try {
            FileInputStream fi = new FileInputStream("Document.rtf");
            rtfKit.read(fi, doc, 0);
            rcp.getJEditorPane().setDocument(doc);
        } catch (FileNotFoundException e) {
            System.out.println("File not found");
        } catch (IOException e) {
            System.out.println("I/O error");
        } catch (BadLocationException e) {
        }
    }

Все идет хорошо, пока я не вставляю отступы, маркированные списки или нумерованные списки в исходный документ. Если документ содержит один из этих элементов, весь последующий текст имеет отступ при отображении также в JEditorPane. В оригинальном RTF-файле написано следующее:

enter image description here

Я хочу, чтобы JEditorPane отображал текст, как показано выше. Вместо этого он отображается в JEditorPane следующим образом:

enter image description here

Подойдет также любое решение, использующее TextArea или TextPane вместо EditorPane.

1 Ответ

0 голосов
/ 09 мая 2018

Тот факт, что я не получил здесь ответов, свидетельствует о том, что люди не смогли воспроизвести мою ошибку, что помогло точно определить проблему.

Проблема была не в коде программы, а в способе, которым я продолжал редактировать документ RTF. Я использовал WordPad для добавления отступов в документ, после чего я загружал документ в программу. Однако отступы в WordPad не регистрируются должным образом, что и стало причиной проблемы.

Я заметил это, когда использовал следующий класс для редактирования документа RTF непосредственно внутри программы. Сохранение программы впоследствии создало правильные отступы. Затем я вместо этого открыл документ в Microsoft Word и добавил еще один отступ, и это тоже устранило проблему, поэтому проблема решается тем, что WordPad не редактирует документ RTF, который вы хотите загрузить в программу.

...