GroupDocs.Annotation for Java 19.4 Release Notes

Major Features

Below is the list of most notable changes in release of GroupDocs.Annotation for Java:

  • Implement watermark annotation for Words
  • Add cleanup for text replacement in Words
  • Improve text annotations in Slides
  • Improve shape processing in Diagrams for text annotations
  • Fixed SvgPath parsing
  • Implement export import and cleanup functionality for Cells format
  • Added new types of annotations for Cells
    • Text Annotation
    • Watermark
    • Resource Redaction
    • Text Replacement

Full List of Issues Covering all Changes in this Release

KeySummaryIssue Type
ANNOTATIONNET-700Implement watermark annotation for WordsNew Feature
ANNOTATIONNET-699Implement TextReplacement annotation for CellsNew Feature
ANNOTATIONNET-705Implement text annotations for CellsNew Feature
ANNOTATIONNET-702Implement Watermark annotation for CellsNew Feature
ANNOTATIONNET-701Implement ResourceRedation annotation for CellsNew Feature
ANNOTATIONNET-724Add cleanup for text replacement in WordsNew Feature
ANNOTATIONNET-752Add the ability to apply text annotations without changing the colorNew Feature
ANNOTATIONNET-751Add reviewer rights management for operations with replies.New Feature
ANNOTATIONNET-750Add the ability to set text annotations transparency for DiagramsNew Feature
ANNOTATIONNET-737Add creating Arrow annotation with AnnotationInfo.Box in PDFNew Feature
ANNOTATIONNET-791Implement TextReplacement in SlidesNew Feature
ANNOTATIONNET-798Implement font family support for TextReplacementNew Feature
ANNOTATIONNET-812Implement export only pages that contains annotationsNew Feature
ANNOTATIONNET-813Implement Export document with specific annotation typeNew Feature
ANNOTATIONNET-814Export specific pages range of documentNew Feature
ANNOTATIONNET-815Add possibility to retrieve pages without annotationsNew Feature
ANNOTATIONNET-727Improve text annotations in SlidesImprovement
ANNOTATIONNET-720Improve shape processing in Diagrams for text annotationsImprovement
ANNOTATIONNET-745Security improvements updateImprovement
ANNOTATIONNET-756Change default TextField background color for Diagrams and SlidesImprovement
ANNOTATIONNET-755Display border for TextField annotation in ImagesImprovement
ANNOTATIONNET-754Change TextField default background color in PDFImprovement
ANNOTATIONNET-744Improve applying annotations properties for DiagramsImprovement
ANNOTATIONNET-736Change applying comments with repliesImprovement
ANNOTATIONNET-740Add FontColor cleanup in SlidesImprovement
ANNOTATIONNET-741Implement PenStyle property for WordsImprovement
ANNOTATIONNET-742 Implement PenStyle property for CellsImprovement
ANNOTATIONNET-743Implement PenStyle property for DiagramsImprovement
ANNOTATIONNET-744Implement PenStyle property for PDFImprovement
ANNOTATIONNET-745Implement PenStyle property for SlidesImprovement
ANNOTATIONNET-756Implement PenStyle property in ImagesImprovement
ANNOTATIONNET-806Ensured and updated GroupDocs.Annotation code is thread-safeImprovement
ANNOTATIONNET-811Add text replacement for grouped shapesImprovement
ANNOTATIONJAVA-1124Managing different versions of annotated fileImprovement
ANNOTATIONJAVA-1123Document Annotation With Native Mobile AppsImprovement
ANNOTATIONJAVA-1111Adding creator information with annotation is not savedImprovement
ANNOTATIONNET-729Bug with SvgPath parsingBug
ANNOTATIONNET-748Bug with manual date changing for DiagramsBug
ANNOTATIONNET-738Bug with cleaning multiple different annotations for PdfBug
ANNOTATIONNET-752.NET version: TIFF/Multi TIFF file is either corrupted or black and white when annotatedBug
ANNOTATIONNET-748Fix for unstable sorting for Slides and DiagramsBug
ANNOTATIONNET-807Fix time format bug for SlidesBug
ANNOTATIONNET-804Fix converting int to PDF.ColorBug
ANNOTATIONNET-799Fix annotation point position for TextReplacement on SlidesBug
ANNOTATIONNET-793Issue with CleanUp on PDF documentBug
ANNOTATIONNET-819 AnnotationImageHandler.GetDocumentInfo method in trial mode throws exceptionBug
ANNOTATIONNET-821 Bug during apply annotation to empty document in CellsBug
ANNOTATIONNET-82 NotSupportedException exception when pass password parameter for ImagesBug
ANNOTATIONJAVA-1121 Exception is thrown while adding annotation in DiagramsBug
ANNOTATIONJAVA-1125 Exception occurred while adding Distance, Point and Polyline annotation to Word docBug
ANNOTATIONJAVA-1143 Wrong size of text annotation and disappearing the annotation in word fileBug
ANNOTATIONJAVA-1141Exception occurred while annotate pdf,word file in total sampleBug
ANNOTATIONJAVA-1139Exception occurred while remove annotations from pdf fileBug
ANNOTATIONJAVA-1130java.lang.NoSuchFieldError exception when applying licenseBug

Public API and Backward Incompatible Changes

  1. Export page range: To export specific pages  you should just to setup *ExportOptions *class, and then export as before.

    ExportOptions options = new ExportOptions();
    options.setFirstPage(5);
    options.setLastPage(8);
    

    Result: will be exported document pages started from page 6 and ending page 9.

    ExportOptions options = new ExportOptions();
    options.setFirstPage(4);
    options.setLastPage(4);
    

    Result: document will contain only one page with index 5. Note: there will be no effect if:

    • FirstPage > LastPage;
    • If FirstPage or / and LastPage < 0
    • If LastPage > document pages number
  2. Export only pages with annotations:

    To export only pages that contains annotations you should specify *AnnotatedPages = true *of *ExportOptions *class.

    ExportOptions options = new ExportOptions();
    options.setAnnotatedPages(true);
    

    Result: document that contains only annotated pages.

    ExportOptions options = new ExportOptions();
    options.setFirstPage(5);
    options.setLastPage(8);
    options.setAnnotatedPages(true);
    

    Result: document that contains only annotated pages inside this page range. If there not annotated pages, then document will contains only page from specific range.

  3. Export annotations of specific types:

    List<Byte> typesToExport = new ArrayList<Byte>();
    typesToExport.add(AnnotationType.Area);
    typesToExport.add(AnnotationType.Polyline);
    ExportOptions options = new ExportOptions();
    options.setAnnotationTypes(typesToExport);
    

    Result: document that contains only Area and Polyline annotations.

    List<Byte> typesToExport = new ArrayList<Byte>();
    typesToExport.add(AnnotationType.Area);
    ExportOptions options = new ExportOptions();
    options.setAnnotationTypes(typesToExport);
    options.setAnnotatedPages(true);
    

    Result: document that contains only annotated pages with only Area annotations.

    List<Byte> typesToExport = new ArrayList<Byte>();
    typesToExport.add(AnnotationType.Area);
    ExportOptions options = new ExportOptions();
    options.setAnnotationTypes(typesToExport);
    options.setAnnotatedPages(true);
    options.setFirstPage(5);
    options.setLastPage(8);
    

    Result: document that contains only annotated pages with only Area annotations inside range from 5 to 8th pag. If no Area annotation inside this range, then document just contains pages from 5 to 8.