Створення Rich Word Document в Java

В останні роки динамічна генерація документів Word стала популярною функцією для складання звітів, пропозицій, рахунків-фактур та інших типів документів. Доступні різні бібліотеки, які дозволяють створювати документи MS Word програмно на Java. Однак деякі з них потребують MS Office, а інші вимагають написання складного коду. Розглядаючи такі проблеми, ця стаття має на меті надати вам найкращий, але найпростіший спосіб створення документів MS Word на Java без використання MS Office. Крім того, ви дізнаєтеся, як автоматизувати функції MS Word за допомогою мінімуму рядків простого коду.

Бібліотека Java для створення документів Word

У цій статті ми будемо використовувати Aspose.Words for Java, багатофункціональну бібліотеку для створення, редагування або перетворення документів Word у програмах на основі Java. Ви можете завантажити JAR API або встановити його за допомогою таких конфігурацій Maven:

Репозиторій:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Залежність:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words</artifactId>
    <version>22.11</version>
    <classifier>jdk17</classifier>
</dependency>

У наступних розділах ви дізнаєтеся, як програмним шляхом за допомогою Java створити документ Word, що містить різні елементи, такі як текст, абзаци, таблиці, списки, зображення тощо.

Як створити документ Word на Java

У більшості випадків значна частина вмісту документа Word базується на тексті. Тому ми почнемо нашу подорож зі створення документа Word із заголовком і абзацом.

Нижче наведено кроки, щоб створити документ Word з нуля.

  • Спочатку створіть екземпляр класу Document.
  • Створіть об’єкт DocumentBuilder та ініціалізуйте його об’єктом Document.
  • Використовуйте клас Font і встановіть розмір шрифту, сімейство тощо.
  • Встановіть властивості абзацу за допомогою класу ParagraphFormat.
  • Введіть текст у документ за допомогою методу DocumentBuilder.write().
  • Нарешті, викличте метод Document.save(), щоб створити документ.

Програма Java для створення документа Word

У наведеному нижче прикладі коду показано, як створити документ Word, що містить текст на Java.

// Створіть об’єкт «Документ».
Document doc = new Document();
// Створіть об’єкт DocumentBuilder
DocumentBuilder builder = new DocumentBuilder(doc);
// Вкажіть форматування шрифту
Font font = builder.getFont();
font.setSize(18);
font.setBold(true);
font.setColor(Color.BLACK);
font.setName("Arial");
builder.write("How to Create a Rich Word Document?");
builder.insertBreak(BreakType.LINE_BREAK);
// Почніть абзац
font.setSize(12);
font.setBold(false);
ParagraphFormat paragraphFormat = builder.getParagraphFormat();
paragraphFormat.setFirstLineIndent(12);
paragraphFormat.setKeepTogether(true);
builder.write("This article shows how to create a Word document containing text, images and lists.");
// Збережіть документ
doc.save("Rich Word Document.docx");

Вихід

Створіть документ Word на Java

Створення таблиці в документі Word на Java

Таблиці в документах Word використовуються для організації вмісту у вигляді рядків і стовпців. У цьому розділі ми створимо просту таблицю, що містить два рядки та два стовпці. Створення таблиці включає чотири основні операції:

  • Запуск таблиці
  • Вставка комірки
  • Закінчення ряду
  • Закінчення столу

Нижче наведено крок для створення таблиці в документі Word у Java:

  • Спочатку створіть об’єкти класу Document і DocumentBuilder.
  • Створіть таблицю за допомогою класу Table.
  • Вставте клітинку за допомогою методу DocumentBuilder.insertCell().
  • Встановіть властивості таблиці відповідно до ваших вимог.
  • Додайте текст до клітинки за допомогою методу DocumentBuilder.write().
  • Завершіть рядок і таблицю за допомогою методів DocumentBuilder.endRow() і DocumentBuilder.endTable() відповідно.
  • Нарешті, збережіть документ.

У наведеному нижче прикладі показано, як створити документ Word і додати до нього таблицю.

// Створіть об’єкт «Документ».
Document doc = new Document();
// Створіть об’єкт DocumentBuilder
DocumentBuilder builder = new DocumentBuilder(doc);
// Створити таблицю
Table table = builder.startTable();
// Вставте клітинку
builder.insertCell();
table.autoFit(AutoFitBehavior.AUTO_FIT_TO_WINDOW);
builder.getCellFormat().setVerticalAlignment(CellVerticalAlignment.CENTER);
builder.write("This is Row 1 Cell 1");
builder.insertCell();
builder.write("This is Row 1 Cell 2");
// Кінцевий ряд
builder.endRow();
// почати наступний рядок і встановити його властивості
builder.getRowFormat().setHeight(100);
builder.getRowFormat().setHeightRule(HeightRule.EXACTLY);
builder.insertCell();
builder.write("This is Row 2 Cell 1");
builder.insertCell();
builder.write("This is Row 2 Cell 2");
builder.endRow();
// Кінець таблиці
builder.endTable();
// Збережіть документ
doc.save("Rich Word Document.docx");

Вихід

Java генерує документ Word із таблицею

Автоматизація Java Word - вставте документ зі списком

Нижче наведено кроки, щоб додати список до документа Word.

  • Спочатку створіть об’єкт класу Document.
  • Додайте бажаний тип списку до документа за допомогою методу Document.getLists().add().
  • Отримайте список із документа в об’єкт List.
  • Заповніть список за допомогою об’єкта DocumentBuilder.
  • Нарешті, збережіть документ.

У наведеному нижче прикладі коду показано, як створити список у документі Word за допомогою Java.

// Створіть об’єкт «Документ».
Document doc = new Document();
doc.getLists().add(ListTemplate.BULLET_CIRCLE);
List list = doc.getLists().get(0);
// Установіть значення true, щоб вказати, що список потрібно перезапускати в кожному розділі.
list.isRestartAtEachSection(true);
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(list);
for (int i = 1; i < 45; i++) {
	builder.writeln(String.format("List Item " + i));
	// Вставити розрив розділу.
	if (i == 15)
		builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE);
}
builder.getListFormat().removeNumbers();
// Збережіть документ
doc.save("Rich Word Document.docx");

Вихід

Вставити список у Word docx у Java

Java Створіть документ Word і вставте зображення

Вставити зображення в документ Word так само просто, як пиріг. Нижче наведено кілька простих кроків для виконання цієї операції.

  • Спочатку створіть об’єкт класу Document.
  • Створіть об’єкт класу DocumentBuilder та ініціалізуйте його об’єктом Document.
  • Вставте зображення за допомогою методу DocumentBuilder.insertImage().
  • Нарешті, збережіть документ.

У наведеному нижче прикладі коду показано, як вставити зображення в документ Word у Java.

// Створіть об’єкт «Документ».
Document doc = new Document();
// Створіть DocumentBuiler
DocumentBuilder builder = new DocumentBuilder(doc);
// Вставити зображення
builder.insertImage("aspose-words.png");
// Збережіть документ
doc.save("Rich Word Document.docx");

Вихід

Вставити зображення в Word docx в Java

Створюйте документи MS Word із безкоштовною ліцензією

Ви можете отримати безкоштовну тимчасову ліцензію і створювати документи MS Word з нуля без оціночних обмежень.

Бібліотека автоматизації Java Word - Докладніше

Ви можете докладніше про те, як вставляти різні елементи в документ Word за допомогою Aspose.Words for Java.

Висновок

У цій статті ви дізналися, як створювати розширені документи Word на Java. Крім того, зразки коду показали, як додавати текст, таблиці, зображення та списки до документів Word. Таким чином, ви можете легко реалізувати функції автоматизації MS Word у своїх програмах Java.

Дивись також