В моей недавней работе мне нужно было сгенерировать документ Word в программе на Java. После поиска в Интернете и тестирования я успешно решил эту проблему. Сегодня я расскажу вам, как я использую Free Spire.Doc for Java для создания документов Word в приложениях Java, вставки в них изображений и форматирования абзацев.
Установите пакет jar через репозиторий Maven, и код для настройки файла pom.xml выглядит следующим образом:
Код Java

Конфигурация среды
Установите пакет jar через репозиторий Maven, и код для настройки файла pom.xml выглядит следующим образом:
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc.free</artifactId>
<version>2.7.3</version>
</dependency>
</dependencies>
Код Java
import com.spire.doc.*;
import com.spire.doc.documents.HorizontalAlignment;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.ParagraphStyle;
import com.spire.doc.fields.DocPicture;
import java.awt.*;
public class CreateWordDocument {
public static void main(String[] args){
//Создать документ Word
Document document = new Document();
//Добавить раздел
Section section = document.addSection();
//Добавить 4 абзаца в раздел
Paragraph para1 = section.addParagraph();
para1.appendText("Земля́");
Paragraph para2 = section.addParagraph();
para2.appendText("третья по удалённости от Солнца планета Солнечной системы. "+
"Самая плотная, пятая по диаметру и массе среди всех планет и крупнейшая среди планет земной группы, в которую входят также Меркурий, Венера и Марс. "+
"Единственное известное человеку в настоящее время тело Солнечной системы в частности и Вселенной вообще, населённое живыми организмами.");
Paragraph para3 = section.addParagraph();
para3.appendText("В публицистике и научно-популярной литературе могут использоваться синонимические термины — "+
"мир, голубая планета");
//Добавьте картинки в абзац 4
Paragraph para4 = section.addParagraph();
DocPicture picture = para4.appendPicture("pic2.jpg");
//Установить ширину изображения
picture.setWidth(300f);
//Установить высоту изображения
picture.setHeight(250f);
//Используйте первый абзац в качестве заголовка и отформатируйте заголовок
ParagraphStyle style1 = new ParagraphStyle(document);
style1.setName("titleStyle");
style1.getCharacterFormat().setBold(true);
style1.getCharacterFormat().setTextColor(Color.BLUE);
style1.getCharacterFormat().setFontName("Arial");
style1.getCharacterFormat().setFontSize(12f);
document.getStyles().add(style1);
para1.applyStyle("titleStyle");
//Установите формат абзацев 2 и 3
ParagraphStyle style2 = new ParagraphStyle(document);
style2.setName("paraStyle");
style2.getCharacterFormat().setFontName("Arial");
style2.getCharacterFormat().setFontSize(11f);
document.getStyles().add(style2);
para2.applyStyle("paraStyle");
para3.applyStyle("paraStyle");
//Установите абзац 1 и абзац 4 для выравнивания по центру по горизонтали
para1.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
para4.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
//Установите отступ начала второго и третьего абзацев
para2.getFormat().setFirstLineIndent(25f);
para3.getFormat().setFirstLineIndent(25f);
//Установите пробел после абзаца 1, 2 и 3
para1.getFormat().setAfterSpacing(15f);
para2.getFormat().setAfterSpacing(10f);
para3.getFormat().setAfterSpacing(10f);
//Сохраните документ
document.saveToFile("Word Document.docx", FileFormat.Docx);
}
}
