What is docx4j?
docx4j is an open source (Apache v2) library for creating, editing, and saving OpenXML "packages", including docx, pptx, and xslx.
It uses JAXB to create the Java representation.
Open existing docx/pptx/xlsx
Create new docx/pptx/xlsx
Programmatically manipulate docx/pptx/xlsx (anything the file format allows)
CustomXML binding (with support for pictures, rich text, checkboxes, and OpenDoPE extensions for repeats & conditionals, and importing XHTML)
Export as HTML
Export as PDF (using Plutext's PDF
Converter, or use docx4j-export-FO project)
Produce/consume Word 2007's xmlPackage (pkg) format
Apply transforms, including common filters
Font support (font substitution, and use of any fonts embedded in the document)