All Versions
67
Latest Version
Avg Release Cycle
51 days
Latest Release
-

Changelog History
Page 4

  • v8.1.3 Changes

    August 29, 2019

    ๐Ÿš€ Release date

    29 August 2019

    ๐Ÿš€ Contributors to this release

    Jason Harrop

  • v8.1.2 Changes

    July 31, 2019

    ๐Ÿ›  Bugfix: synchronize access to namespacePrefixMapper to avoid "namespacePrefixMapper is null" in multithreaded scenarios

  • v8.1.1 Changes

    June 29, 2019

    ๐Ÿ›  Bugfix: specify UTF-8 in MainDocumentPartFilterOutputStream

    ๐Ÿ‘Œ Support for embedded True Type Fonts. (Up until now, we only supported obfuscated embeddings)

    xlsx4j

    ๐Ÿ›  Bugfix: Correct jcSML spreadsheetDrawing package name

    ๐Ÿ‘Œ Support mc:alternateContent in Workbook part (ie instead of dropping it)

  • v8.1.0 Changes

    May 21, 2019

    โšก๏ธ Update [MS-PPTX] and [MS-ODRAWXML] content models with latest schemas.

    Implement child in dml

    ๐Ÿ“ฆ Re-packaged subset of Guava to shave 2.4MB off deps size

    ๐Ÿ’… StyleTree handles default table style (used by MergeDocx)

    docx4j

    ๐Ÿ‘Œ Support adding altChunk at specified index

    ๐Ÿ”ง VariablePrepare: make settings configurable

    ๐Ÿšš Move anon out of core to a dedicated Maven module

    pptx4j

    ๐Ÿ‘Œ support mc:AlternateContent in slide shape tree

    Implement child in pml

  • v8.0.0 Changes

    April 21, 2019

    ๐Ÿ‘ Minimum supported Java version is 8.0

    ๐Ÿš€ docx4j 8 should be easier to deploy in complex environments such as OSGi, JBoss EAP etc.

    docx4j is now a Maven multi-module project. To use it via Maven, add just one of docx4j-JAXB-Internal, docx4j-JAXB-MOXy, or docx4j-JAXB-ReferenceImpl dependencies.

    โšก๏ธ Various dependencies were updated (some of which require Java 1.8)

    ๐Ÿ‘ OpenDoPE support for XPath 2.0, 3.0 (requires Saxon)

    Uses repackaged and mavenized Xalan; see https://github.com/plutext/xalan-j/tree/Plutext_Java8_Repackaged_Docx4j

  • v6.1.2 Changes

    February 27, 2019

    ๐Ÿ›  Fix for #340 Field handling NumberExtractor, handle group separator '.' (eg German) correctly.

    ๐Ÿ†• New property docx4j.Fields.Numbers.JavaStylePercentHandling which if set to true multiplies the value by hundred.
    For example, formatting 0.33 with "\# ##%" would yield 33%.

    ๐Ÿ›  Fix for #344 (NPE in TraversalUtil in graphicData) ๐Ÿ›  Fix for #346 (relating to Fields)

    xlsx4j

    Convenience method to access ThemePart

  • v6.1.1 Changes

    January 21, 2019

    vml and mc lists are now of type ArrayListVml|Mce respecitvely, in which parent object is automatically set correctly (as is done for wml objects)

    ๐Ÿ‘ TraversalUtil replaceChildren: support replacing in a bare List object.

    OpenDoPE removal handler: new option ALL_BUT_PLACEHOLDERS_CONTENT, ๐Ÿšš Ordinarily, if an SDT contains XML but no real content, that XML is also removed.
    ๐Ÿšš Choose this option if you want to keep placeholder XML (but remove the SDT).

  • v6.1.0 Changes

    December 15, 2018

    IMPORTANT: Force namespaces used in mc:choice to be declared top-level. If they aren't there, Word can't open the docx.

    ๐Ÿ’… mc:Ignorable: support attribute in footnotes/endnotes, numbering, styles ๐Ÿ‘ (already supported in main and headers/footers)

    w14 namespace handling improvements: Don't drop these attributes in mc-preprocessor.xslt; ๐Ÿ‘Œ Support w14:EG_RPrOpenType elements

    0๏ธโƒฃ PDF Converter now defaults to localhost endpoint to avoid information leakage. (controlled by docx4j property com.plutext.converter.URL) The localhost endpoint will only work if you download and install the converter there! โœ… If you choose to use converter-eval.plutext.com, please only use it for light testing purposes.

    โšก๏ธ BookmarksIntegrity checking now part of docx4j proper; used before ToC updating

    ๐Ÿ‘ฏ AttachTemplate now part of docx4j proper; method cloneAs

    OpenDoPE finisher: optional step in which formatting can be applied (this is often neater than using conditional content controls just for formatting)

    OpenDoPE RemovalHandler: new Quantifier.ALL_BUT_PLACEHOLDERS (ie remove content controls, but keep any placeholders inserted where there is empty content), ability to specify Quantifier via docx4j.properties; also ability to substitute your own RemovalHandler.xslt.

    OpenDoPE: simplified component processing model [requires Enterprise]:

    1. components don't have to be at the top paragraph level of the content tree, BUT:
    2. component processing is now done before condition/repeat processing
    3. component processing is not recursive anymore
    4. components typically use the "main" answer file 0๏ธโƒฃ component processing is OFF by default Enable it with property "docx4j.model.datastorage.OpenDoPEHandlerComponents.enabled"
  • v6.0.1 Changes

    August 03, 2018

    ๐Ÿš€ In many cases v6.0.0 release writes <?xml version="1.0" ?> omitting encoding "UTF-8". ๐Ÿš€ This release corrects that, and is recommended for this reason.

  • v6.0.0 Changes

    July 22, 2018

    ๐Ÿ‘ Docx4j 6.x will be the last series supporting Java 6.
    ๐Ÿš€ (docx4j 7.x, when released, will require Java 7+)

    ๐Ÿ†• New dependency commons-compress used for zip/unzip. Most other โšก๏ธ deps updated to last version supporting Java 6.

    ๐Ÿ‘Œ Support for Java 9 and 10 (see notes in README for use in Eclipse)

    • Maven profiles for java 9 and 10
    • Maven pom now specifies source & target 1.6 (previously 1.5)

    Preserve mc:AlternateContent in a run. Previously, this would have caused mc-preprocessor to be invoked, selecting one of the pieces of content.

    Object model for wps http://schemas.microsoft.com/office/word/2010/wordprocessingShape

    Content Control databinding (and OpenDoPE)

    • โšก๏ธ UpdateXmlFromDocumentSurface: Copy content control content back to the custom XML part, like Microsoft Word does for a content control which has a w:databinding element
    • ๐Ÿ‘Œ improvements to migration (from eg VariableReplace)
    • ๐Ÿ‘ better support for binding standardised Answers format
    • various other improvement

    Write docx4j version as XML comment in MainDocument part.

    New properties docx4j.openpackaging.parts.MAX_BYTES.unzip.error and docx4j.openpackaging.parts.MAX_BYTES.unmarshal.error which can be ๐Ÿ‘ป set to positive values to have docx4j throw a PartTooLarge exception if a part is larger than the set value.