Установка шрифта и стиля jeditorpane

В настоящее время я занимаюсь разработкой приложения для этой компании в качестве моего проекта за последний год обучения, и в этом приложении есть эта функция, которая позволяет печатать бумагу, поэтому я, очевидно, использовал jeditorpane с Charles Bell HTMLEditorKit для предопределенных функций, таких как настройка шрифт и печать, и т. д.... и есть этот предварительно написанный текст, который мне нужно загрузить из текстового файла, а затем программа должна автоматически добавить некоторый текст в файл, и пользователю также разрешено добавлять больше, если он должен или изменить шрифт или стиль или что-то еще.

Так вот в чем проблема, так как предопределенный текст должен быть уже выровнен с уже установленным шрифтом и некоторыми другими свойствами, уже имеющимися, и поскольку txt-файл не позволяет этого, я попытался использовать файл docx, который делает текст непонятно в панели редактора, я также попробовал API docx4j, но тогда у меня не было бы меню и функций HTMLEditorKit (или, возможно, я мог бы, но я не знаю как), и выполнение приложения стало довольно медленным с этим API, Я также попробовал этот набор метафазного редактора, который мне показался действительно полезным с большим количеством функций, но я не смог загрузить текстовый файл в его текстовое поле.

Так что мой вопрос (а), чтобы быть точным (1): Как я могу использовать HTMLEditorKit charles bell и загрузить файл docx в рассматриваемый редактор? 2) Или как я могу использовать API docx4j с HTMLEditorKit с меню функций (стиль, печать, шрифт...) или, возможно, другое предопределенное меню? 3) Или, что еще лучше, как я могу по-прежнему использовать metaphaseEditorPane с его полным меню функций и в то же время загружать существующий файл docx в свою текстовую панель?

Извините за длинный вопрос, и любая помощь будет считаться, я бы очень нуждался в этом.

2 ответа

Решение

Наконец, я нашел решение после нескольких дней поиска и тестирования. На самом деле оно оказалось очень простым.

Все, что мне нужно было сделать, это использовать панель редактора метафазы, которая, кстати, имеет отличную панель инструментов, создать DocxEditorkit, а затем установить editorkit текстовой панели панели редактора метафазы в этот DocxEditorKit, хотя метаморфоза работает с текстовой панелью HTML, чудесным образом сработало...

DocxEditorKit DEK=new DocxEditorKit;
MetaphaseEditorPanel MEP=new MetaphaseEditorPanel;
MEP.getHTMLTextPane().setEditorKit(DEK);

   //Try and Catch blocks of course to read the file
DEK.read(new FileInputStream(PathToFile), MEP.getHTMLTextPane().getDocument(), 0);
getContentPane.add(MEP, BorderLayout.CENTER);

И это было все... Кто думал, что это будет так просто.

См. Добавление пользовательских форм в JTextpane и сохранение в новый документ Word для ссылок на два проекта, которые используют docx4j для обеспечения расширенного редактирования текста docx в Swing.

Другие вопросы по тегам