docx4j component

/projects/docx4j

News

docx4j v2.1.0 released 12 November 2008.

Purpose

docx4j is our library for unzipping a docx "package", and parsing the WordprocessingML XML to create an in-memory representation in Java. See UseCases.

It is available under the Apache License (v2).

This library is used by the plutext collaboration server, and the docx4all editor.

The library is designed to round trip docx files with 100% fidelity, and supports all WordML, with the exception of math (which could be added easily enough).

Status

The library supports all of WordprocessingML, with the exception of math. There is also support for the properties parts, and the theme part.

See UseCases for specifics.

Here is a link to our JavaDoc.

Features

See UseCases for specifics.

Download

A nightly build can be found here (built for Java 1.5+).

Otherwise, you can set up your own development environment from scratch.

See further

- FAQs

- User Documentation

- Developer Documentation

Requirements and Dependencies

You currently need to be using Java 1.5+. See here regarding issues with 1.4.

docx4j relies on quite a few third party jar files (which are included in the nightly builds). We are grateful these are available. Please see here for details.

Heritage

This library is based originally on OpenXML4J, and a number of its source files retain that project's copyright notice. We gratefully acknowledge OpenXML4J's work, and encourage you to use it directly or via Apache POI, especially if you are working with spreadsheets. Here is a stab at some of the differences.

Keywords

docx java, Office Open XML, OpenXML, ooxml, WordML, WordprocessingML