Как редактировать документы Word с помощью Java

Редактирование документа Word необходимо для уточнения и улучшения письменного содержимого. Независимо от того, обновляете ли вы текст, корректируете форматирование или добавляете изображения, Microsoft Word предлагает ряд инструментов для упрощения этого процесса.
В этой статье я расскажу о том, как программно редактировать документы Word с помощью библиотеки Java Word.
- Изменение текста абзаца в Word
- Изменение форматирования текста в Word
- Добавить новый абзац в Word
- Добавить изображение в Word
Установите необходимую библиотеку
Spire.Doc for Java — это универсальная библиотека, позволяющая разработчикам программно создавать, редактировать и манипулировать документами Word.
Если вы не используете Maven, скачайте
jar-файл по этой
ссылке и добавьте его в качестве зависимости в свое приложение. Для
проектов Maven вы можете легко импортировать jar в свое приложение с помощью
следующих конфигураций. Spire.Doc for Java предоставляет методы для
легкого доступа к разделам и параграфам в документе Word. После получения
параграфа вы можете изменить его текст с помощью метода Paragraph.setText(). Следующий фрагмент кода
демонстрирует, как изменить текст абзаца в документе Word. import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.Section; import com.spire.doc.documents.Paragraph; public class ChangeText { public static void main(String[] args) { // Создать новый объект документа Document document = new Document(); // Загрузить существующий файл Word document.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx"); // Получить конкретный раздел Section section = document.getSections().get(0); // Получить конкретный параграф Paragraph paragraph = section.getParagraphs().get(0); // Изменить текст параграфа paragraph.setText("Текст этого параграфа был обновлён."); // Сохранить документ в другой файл Word document.saveToFile("ChanegText.docx", FileFormat.Docx); // Освободить ресурсы document.dispose(); } } Чтобы изменить
форматирование текста в абзаце, сначала нужно получить сам абзац. Затем
пройдитесь по диапазонам текста в абзаце и используйте методы объекта TextRange, чтобы изменить название
шрифта, размер, цвет и стиль текста. Следующий код является
примером изменения форматирования текста в Word. import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.Section; import com.spire.doc.documents.Paragraph; import com.spire.doc.fields.TextRange; import java.awt.*; public class ChangeTextFormatting { public static void main(String[] args) { // Создать новый объект документа Document document = new Document(); // Загрузить существующий файл Word document.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx"); // Получить конкретный раздел Section section = document.getSections().get(0); // Получить конкретный параграф Paragraph paragraph = section.getParagraphs().get(0); // Перебрать дочерние объекты в параграфе for (int i = 0; i < paragraph.getChildObjects().getCount(); i++) { // Определить, является ли дочерний объект диапазоном текста if (paragraph.getChildObjects().get(i) instanceof TextRange) { // Получить конкретный диапазон текста TextRange textRange = (TextRange)paragraph.getChildObjects().get(i); // Установить имя шрифта textRange.getCharacterFormat().setFontName("Times New Roman"); // Установить размер шрифта textRange.getCharacterFormat().setFontSize(11); // Установить цвет текста textRange.getCharacterFormat().setTextColor(Color.blue); // Сделать текст курсивным textRange.getCharacterFormat().setItalic(true); } } // Сохранить документ в другой файл Word document.saveToFile("ChangeFont.docx", FileFormat.Docx); // Освободить ресурсы document.dispose(); } } Чтобы добавить новый
абзац в конец документа Word, можно воспользоваться методом Document.getLastSection().addParagraph().
Кроме того, вы можете создать объект ParagraphStyle,
определяющий форматирование текста, и применить его к абзацу с помощью метода Paragraph.applyStyle(). Следующий код
показывает, как добавить новый абзац с текстом в документ Word. import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.Section; import com.spire.doc.documents.Paragraph; import com.spire.doc.documents.ParagraphStyle; public class AddParagraph { public static void main(String[] args) { // Создать новый объект документа Document document = new Document(); // Загрузить существующий файл Word document.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx"); // Получить последний раздел Section lastSection = document.getLastSection(); // Добавить параграф в раздел Paragraph paragraph = lastSection.addParagraph(); // Добавить текст в параграф paragraph.appendText("Это новый параграф."); // Создать стиль параграфа ParagraphStyle style = new ParagraphStyle(document); style.setName("FontStyle"); style.getCharacterFormat().setFontName("Times New Roman"); style.getCharacterFormat().setFontSize(12); document.getStyles().add(style); // Применить стиль к параграфу paragraph.applyStyle(style.getName()); // Сохранить документ в другой файл Word document.saveToFile("AddParagraph.docx", FileFormat.Docx); // Освободить ресурсы document.dispose(); } } Чтобы добавить изображение в документ Word, достаточно воспользоваться
методом Paragraph.appendPicture(). В
следующем коде приведен пример. import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.Section; import com.spire.doc.documents.Paragraph; public class AddImage { public static void main(String[] args) { // Создать новый объект документа Document document = new Document(); // Загрузить существующий файл Word document.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx"); // Получить последний раздел Section lastSection = document.getLastSection(); // Добавить параграф в раздел Paragraph paragraph = lastSection.addParagraph(); // Добавить изображение в параграф paragraph.appendPicture("C:\\Users\\Administrator\\Desktop\\Image.png"); // Сохранить документ в другой файл Word document.saveToFile("AddImage.docx", FileFormat.Docx); // Освободить ресурсы document.dispose(); } } В этой статье мы
рассмотрели, как редактировать существующий документ Word с помощью Spire.Doc
for Java. В ней мы рассмотрели, как изменять текст и форматирование текста в
Word, а также как добавлять абзацы (текст) и изображения в Word. Будучи продвинутой Java-библиотекой Word,
Spire.Doc for Java поддерживает множество других функций, таких как: Создание
документа Word на Java Редактирование
документа Word в Java
Изменение текста абзаца в Word
Изменение форматирования текста в Word
Добавить новый абзац в Word
Добавить изображение в Word
Заключение