Open Source Java API dla dokumentów Word DOCX

Twórz, czytaj, edytuj i konwertuj pliki Microsoft Word DOCX, dodawaj tekst i tabele za pomocą biblioteki Java.

DOCX4J to biblioteka open source oparta na JAXB (Apache v2) do manipulowania formatami plików Microsoft Office. Zapewnia funkcję czytania, pisania, edytowania i zapisywania plików w formacie DOCX programu Microsoft Word 2007.

DOCX4J jest podobny do Microsoft OpenXML SDK, ale dla Javy. Używa JAXB do tworzenia reprezentacji obiektu w pamięci. Za pomocą API możesz generować dokumenty Mircosoft Office, edytować je, formatować tekst i akapity, wstawiać tabele i obrazy oraz zarządzać innymi elementami formularzy i wiele więcej. Zasadniczo nacisk kładziony jest na moc, jeśli format to obsługuje, możesz to zrobić za pomocą interfejsu API.

Previous Next

Pierwsze kroki z DOCX4J

Przede wszystkim musisz mieć zainstalowany zestaw Java Development Kit (JDK) w swoim systemie. Odwoływanie się do DOCX4J w projekcie Java opartym na Maven jest jeszcze prostsze. Wszystko, czego potrzebujesz, to dodać następującą zależność do pliku pom.xml i pozwolić IDE na pobieranie i odwoływanie się do plików DOCX4J Jar.

Zależność od DOCX4J Maven

<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-Internal</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-ReferenceImpl</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-MOXy</artifactId>
<version>8.0.0</version>
</dependency>
  

Dodaj akapit, obraz i tabelę do dokumentów programu Word

DOCX4J umożliwia programistom dodawanie akapitów i obrazów do dokumentów programu Word. Interfejs API udostępnia również funkcję dodawania tabel do dokumentów DOCX, umożliwiając jednocześnie tworzenie prostych i zagnieżdżonych tabel z danymi zdefiniowanymi przez użytkownika.

Twórz DOCX za darmo za pomocą DOCX4J - Java

// Create word package
WordprocessingMLPackage wordPackage = WordprocessingMLPackage.createPackage();
// Create main document part
MainDocumentPart mainDocumentPart = wordPackage.getMainDocumentPart();
// Add Paragraph
mainDocumentPart.addParagraphOfText("Open Source Java API for Word DOCX Documents");
// Save file
wordPackage.save(new File("FileFormat.docx"));

Wyodrębnij tekst z DOCX

DOCX4J zapewnia specjalistyczną klasę do wyodrębniania danych z dokumentów Microsoft Word DOCX za pomocą zaledwie kilku linijek kodu. W ten sam sposób może również wyodrębniać nagłówki, przypisy, dane tabeli itd. z pliku Word.

Wyodrębnij tekst z DOCX za darmo - Java

// Load document
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new File("FileFormat.docx"));
// Load main document part
MainDocumentPart mainDocumentPart = wordMLPackage.getMainDocumentPart();
// Extract nodes
String textNodesXPath = "//w:t";
List<Object> textNodes= mainDocumentPart.getJAXBNodesViaXPath(textNodesXPath, true);
// Print text
for (Object obj : textNodes) {
  Text text = (Text) ((JAXBElement) obj).getValue();
  String textValue = text.getValue();
  System.out.println(textValue);
}                 

Generuj i edytuj dokumenty Word za pomocą Java API

DOCX4J umożliwia programistom tworzenie nowych dokumentów Word w formacie pliku DOCX. Programiści mogą również załadować istniejący plik Microsoft Word DOCX, aby edytować go zgodnie z potrzebami aplikacji. Umożliwia dodawanie nowych akapitów, wstawianie tekstu, stosowanie wyrównania i obramowania tekstu, zmianę stylu tekstu i nie tylko.

Konwertuj dokumenty Microsoft Word Docx na PDF

Biblioteka Java docx4j o otwartym kodzie źródłowym zapewnia pełną obsługę generowania i konwersji dokumentów Microsoft Word docx do różnych popularnych formatów. Tam docx4j zapewnia 3 różne sposoby konwersji dokumentów Microsoft Word docx do formatu PDF. Poniższy przykład używa document4j (uruchamianie zdalne) do konwersji pliku docx na PDF.

Konwersja dokumentów EWord Docx do formatu PDF przez Java


public class DocxFileToPDF {
public static void main(String[] args) throws IOException, Docx4JException {
File output = new File(System.getProperty("user.dir")+"/result.pdf");
FileOutputStream fos = new FileOutputStream(output); 
Documents4jRemoteServices exporter = new Documents4jRemoteServices();
exporter.export(new File(System.getProperty("user.dir")+"/../docx4j-samples-docx4j/sample-docs/sample-docx.docx") , fos, DocumentType.MS_WORD); 
fos.close();
}
}
 Polski