GroupDocs.Annotation embeds collaborative annotation into your apps. Add, import, export, render, and manage comments, highlights, redactions, watermarks, and drawings across PDF, DOCX, PPTX, XLSX, images, CAD, and more—without external tools.
- Released GroupDocs.Annotation 26.6 for .NET, Java, and Python via .NET — see the release notes for the latest fixes and improvements.
- New Python via .NET port: annotate PDF, Office, image, and CAD files from Python with no Microsoft Office or Adobe Acrobat required.
- Refreshed code examples and documentation across all three platforms.
Server-side API to render, add, edit, remove, import, export, and search annotations in Office, PDF, images, and CAD.
- GroupDocs.Annotation-for-.NET: Core API with rendering, import/export, thumbnails, and cache support.
Repo & examples: https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-.NET - Demos & UI samples: Showcase projects for web viewers and annotation workflows.
Repo: https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-.NET/tree/master/Demos
// Add annotations to a PDF and save only annotated pagesusing(varannotator=newAnnotator("input.pdf")){vararea=newAreaAnnotation{Box=newRectangle(100,100,140,120),BackgroundColor=65535,// colors are ARGB integersPageNumber=0// PageNumber is 0-based};varellipse=newEllipseAnnotation{Box=newRectangle(200,140,120,120),BackgroundColor=16711680,PageNumber=2};annotator.Add(newList<AnnotationBase>{area,ellipse});annotator.Save("result.pdf",newSaveOptions{OnlyAnnotatedPages=true});}Native Java library for adding, rendering, and exporting annotations across PDF, Office, images, and CAD.
// Quick Java example: add a highlight and savetry (Annotatorannotator = newAnnotator("contract.pdf")) {
HighlightAnnotationhighlight = newHighlightAnnotation();
highlight.setPageNumber(0); // page numbers are 0-basedhighlight.setPoints(Arrays.asList(
newPoint(80, 120), newPoint(220, 120),
newPoint(220, 150), newPoint(80, 150)
));
annotator.add(highlight);
annotator.save("contract-annotated.pdf");
}Python wrapper over the .NET engine — add, get, remove, import/export annotations and threaded comments across PDF, Office, images, and CAD, with no MS Office installation required.
- Repository & examples: https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Python-via-.NET
- PyPI: https://pypi.org/project/groupdocs-annotation-net/
# Add an area annotation to a PDF and save the resultfromgroupdocs.annotationimportAnnotatorfromgroupdocs.annotation.modelsimportRectanglefromgroupdocs.annotation.models.annotation_modelsimportAreaAnnotationfromgroupdocs.pydrawingimportColorwithAnnotator("input.pdf") asannotator:
area=AreaAnnotation()
area.box=Rectangle(100, 100, 140, 120)
area.background_color=Color.yellow.to_argb() # colors are ARGB integersarea.page_number=0# page_number is 0-basedannotator.add(area)
annotator.save("result.pdf")- Review and approval workflows with highlights, stamps, and threaded comments.
- Legal and compliance redaction of sensitive text and regions before sharing.
- Engineering and architecture markups on CAD drawings with shapes and measurements.
- Customer support and QA feedback directly on product docs, manuals, and images.
- Publishing workflows: watermarking drafts, exporting annotations, and creating thumbnails.
- 40+ formats: PDF, DOCX/DOC, XLSX/XLS, PPTX/PPT, VSDX/VSD, DWG/DXF, TIFF/JPG/PNG/BMP, HTML, MSG/EML, ODT/ODS/ODP, RTF, TXT, CSV, and more.
- Annotation objects: area, point, polyline, distance, ellipse, arrow, text field; highlight, underline, strikeout, replacement, link; diagonal/horizontal watermarks.
- Import/export: load existing annotations, export to the original format, or serialize annotations to XML.
- Rendering: view documents as images, generate previews/thumbnails, and render specific pages or regions.
- Loading & cache: load documents from local disk, stream, URL, Amazon S3, Azure Blob, or FTP, with a built-in local cache and pluggable custom cache providers.
- Security & control: password-protected files, page-range processing, remove or update annotations programmatically.
- Office: DOC, DOCX, DOCM, DOT, DOTM, DOTX, RTF; XLS, XLSX, XLSM, XLSB; PPT, PPTX, PPS, PPSX; VSD, VSDX, VSS, VST
- Portable: PDF (including PDF/A profiles)
- Images: TIF, TIFF, JPG, JPEG, PNG, BMP
- CAD: DWG, DXF
- Email: EML, MSG
- Web & Other: HTML, ODT, ODS, ODP, DCM, TXT
- .NET:
Install-Package GroupDocs.Annotationordotnet add package GroupDocs.Annotation - Java: Add the
groupdocs-annotationdependency from the GroupDocs Repository. - Python (via .NET):
pip install groupdocs-annotation-net - Run sample projects in the repositories above to annotate PDFs, Office docs, images, or CAD files.
- Documentation and tutorials: https://docs.groupdocs.com/annotation/
- Free support forum: https://forum.groupdocs.com/c/annotation
- Temporary license for full-feature evaluation: https://purchase.groupdocs.com/temporary-license
- Product page and downloads: https://products.groupdocs.com/annotation
document-annotationpdf-annotationoffice-annotationcad-annotationimage-annotationredactionwatermarkingcommentingmarkupreview-workflowscollaborative-annotationdocument-viewerannotation-sdkdotnet-annotationjava-annotationpdf-commentingdocx-annotationppt-annotationxls-annotationweb-annotationrender-annotations