GroupDocs.Assembly for Java 19.1 Release Notes

Major Features

Supported dynamic merging of table cells with equal text contents.

Full List of Features Covering all Changes in this Release

KeySummaryCategory
ASSEMBLYNET-97 Support dynamic merging of table cells containing the same text after template expressions are evaluated for Spreadsheet documents Feature 
ASSEMBLYNET-98 Support dynamic merging of table cells containing the same text after template expressions are evaluated for Presentation documents Feature 
ASSEMBLYNET-104 Support dynamic merging of table cells containing the same text after template expressions are evaluated for Word Processing documents Feature 
ASSEMBLYNET-105 Support dynamic merging of table cells containing the same text after template expressions are evaluated for emails with HTML and RTF bodies Feature 
ASSEMBLYNET-106 Support textual comments within template syntax tags Feature 

Public API and Backward Incompatible Changes

Supported dynamic merging of table cells with equal text contents.

You can merge table cells with equal textual contents within your reports dynamically using cellMerge tags. Syntax of a cellMerge tag is defined as follows.

<<cellMerge -horz>>

A horz switch is optional. If the switch is present, it denotes a cell merging operation in a horizontal direction. If the switch is missing, it means that a cell merging operation is to be performed in a vertical direction (the default).

For two or more successive table cells to be merged dynamically in either direction by the engine, the following requirements must be met:

  • Each of the cells must contain a cellMerge tag denoting a cell merging operation in the same direction.
  • Each of the cells must not be already merged in another direction.
  • The cells must have equal textual contents (ignoring leading and trailing whitespaces).

Consider the following template.

...

...

...

...

<<cellMerge>><<[value1]>>

...

...

<<cellMerge>><<[value2]>>

...

...

...

...

If value1 and value2 have the same value, say “Hello”, table cells containing cellMerge tags are successfully merged during runtime and a result report looks as follows then.

...

...

...

...

Hello

...

...

...

...

...

...

If value1 and value2 have different values, say “Hello” and “World”, table cells containing cellMerge tags are not merged during runtime and a result report looks as follows then.

...

...

...

...

Hello

...

...

World

...

...

...

...

Supported textual comments within template syntax tags

An optional comment providing a human-readable explanation ignored by the engine

<<tag_name [expression] switch1 switch2 ... // optional_comment >>