Dear GroupDocs users, we’re pleased to announce GroupDocs.Comparison for Java 26.8.2. This release makes the format-specific compare options introduced in 26.8 actually usable: PdfCompareOptions, PagesSetup and WordCompareOptions are now exported from the published jar, along with the cell coordinates of a change in spreadsheet comparison. The release is backward compatible — everything is additive, no code changes are required.
Fix — format-specific compare options are available again
PdfCompareOptions, PagesSetup and WordCompareOptions were part of the library but were not exported from the published jar, so code referencing them did not compile. They are now available under their documented names, together with their nested ComparisonDisplayMode enums. This makes the PDF side-by-side and interleaved views, and page-range comparison, usable in practice.
import com.groupdocs.comparison.Comparer;
import com.groupdocs.comparison.options.PagesSetup;
import com.groupdocs.comparison.options.PdfCompareOptions;
try (Comparer comparer = new Comparer(sourcePath)) {
comparer.add(targetPath);
PdfCompareOptions options = new PdfCompareOptions();
options.setDisplayMode(PdfCompareOptions.ComparisonDisplayMode.SIDE_BY_SIDE);
PagesSetup pagesSetup = new PagesSetup();
pagesSetup.setStartPage(1);
pagesSetup.setEndPage(5);
options.setPagesSetup(pagesSetup);
comparer.compare(resultPath, options);
}
PdfCompareOptions.ComparisonDisplayMode offers INLINE (the default, one merged document), SIDE_BY_SIDE (source page next to its matching target page) and INTERLEAVED (alternating source/target pages, for viewers with a two-page view). WordCompareOptions.ComparisonDisplayMode offers REVISIONS and HIGHLIGHT. Scope.
- Affects 26.8 onwards for
PdfCompareOptionsandPagesSetup, and earlier releases forWordCompareOptions. - Additive only — nothing was removed or renamed, so no migration is needed.
- Comparison behaviour and results are unchanged; this is a packaging fix. (COMPARISONJAVA)
Fix — cell location of a change in spreadsheet comparison
ChangeInfo.getRow(), getColumn() and getColumnHeader() were present in the library but not exported, so a change could not be resolved back to a cell. They now work as documented.
import com.groupdocs.comparison.options.GetChangeOptions;
import com.groupdocs.comparison.result.ChangeInfo;
for (ChangeInfo change : comparer.getChanges(new GetChangeOptions())) {
Integer row = change.getRow(); // zero-based, null when not applicable
Integer column = change.getColumn(); // zero-based, null when not applicable
String header = change.getColumnHeader(); // text from the first worksheet row
}
Scope.
- Populated for the Cells comparer (XLSX, CSV, ODS and related formats); the three values are
nullfor comparers that do not expose cell coordinates, so they are safe to read for any format. - Additive only — no migration is needed. (COMPARISONJAVA)
Update — evaluation watermark
The copyright line in the evaluation-mode watermark now reads 2003 - 2026. Licensed output is unaffected. (COMPARISONJAVA)
Resources