GroupDocs.Annotation
24.5.0
dotnet add package GroupDocs.Annotation --version 24.5.0
NuGet\Install-Package GroupDocs.Annotation -Version 24.5.0
<PackageReference Include="GroupDocs.Annotation" Version="24.5.0" />
paket add GroupDocs.Annotation --version 24.5.0
#r "nuget: GroupDocs.Annotation, 24.5.0"
// Install GroupDocs.Annotation as a Cake Addin #addin nuget:?package=GroupDocs.Annotation&version=24.5.0 // Install GroupDocs.Annotation as a Cake Tool #tool nuget:?package=GroupDocs.Annotation&version=24.5.0
.NET API for Document Annotation
GroupDocs.Annotation for .NET is an on-premise API that integrates advanced document annotation capabilities into .NET applications. With support for 35+ file formats including PDF, Word, Excel, and images, it allows developers to add, edit, and remove annotations across multiple platforms (Windows, Linux, Mac). It offers features such as text, image, QR-code, and metadata annotations, along with collaboration options like comments and replies. Advanced features include document redaction, text replacement, and distance measurement. Additionally, the API supports cloud integration with Amazon S3, Azure, and FTP, making it a flexible solution for document management.
Features Overview
Cross-Platform Annotation
Add annotations to various formats (PDF, Word, Excel, PowerPoint, images) across Windows, Mac, and Linux environments.
Multi-Annotation Support
Supports over 13 different annotation types for 35+ file formats, including text, graphic, and watermark annotations.
Collaborative Commenting
Add, remove, or reply to comments for any annotation type, facilitating collaborative document reviews.
Document Preview Generation
Create document page previews or thumbnails to ensure accurate annotation placement.
Annotation Caching
Use caching solutions like Amazon S3, Dropbox, and Redis to store annotation results for high-performance applications.
Annotation Types
Text Signatures
Add customizable text-based signatures to documents in multiple styles (highlight, strikeout, underline).
Image Signatures
Embed images as annotations, allowing rotation, color adjustments, and transparency settings.
Digital Signatures
Add and verify cryptographically secure digital signatures with support for PDFs and other formats.
QR-Code & Barcode Signatures
Apply QR-code and barcode annotations with custom encoding and style options.
Metadata Signatures
Embed metadata into documents as hidden signatures for enhanced tracking and document management.
Stamp Signatures
Add round or rectangular stamps with customizable text, shape, and color settings.
Advanced Annotation Features
Redaction Annotations
Redact sensitive information by covering it with black boxes, ensuring privacy in documents.
Replacement Annotation
Replace specific document text with new text, a powerful feature for document editing.
Distance & Measurement Annotations
Measure distances between objects or areas within the document.
ZIndex Control
Adjust the Z-index to place image annotations above or below text for enhanced document control.
Document Management
Metadata Extraction
Retrieve detailed metadata from documents, including file type, page count, and document dimensions.
Search & Filter Annotations
Search for specific annotation types or keywords across large document sets.
Version Control for Annotated Documents
Track changes and version histories for documents that have undergone multiple annotations.
Cloud Integration
Amazon S3 & Azure Blob Integration
Load and save annotated documents directly from cloud storage, including Amazon S3 and Azure Blob Storage.
FTP & Web URL Support
Load documents from FTP servers or web URLs for easier access to remote documents.
Collaboration & Exporting
Export to Original Format
Annotated documents can be saved in their original format (PDF, Word, etc.) without losing annotations.
Commenting System
Supports collaboration by allowing teams to add replies to annotations or remove comments.
Import & Export Annotations
Easily import annotations from other software or export them for further use.
Customization & Flexibility
Custom Font Support
Load and apply custom fonts for text annotations, ensuring consistency across corporate branding.
Annotation Filters
Save only the annotated pages or filter specific annotation types when saving documents.
Set Image Quality & Resolution
Adjust the resolution and quality of image-based annotations for detailed previews.
Supported Document Formats
Format | Description | Annotate |
---|---|---|
DOC | Microsoft Word 97-2003 Document | ✔️ |
DOCX | Microsoft Word Document | ✔️ |
DOCM | Microsoft Word Macro-Enabled Document | ✔️ |
DOT | Microsoft Word 97-2003 Template | ✔️ |
DOTX | Microsoft Word Template | ✔️ |
DOTM | Microsoft Word Macro-Enabled Template | ✔️ |
RTF | Rich Text Document | ✔️ |
ODT | OpenDocument Text | ✔️ |
XLS | Microsoft Excel 97-2003 Worksheet | ✔️ |
XLSX | Microsoft Excel Worksheet | ✔️ |
XLSM *xlsx | Microsoft Excel Macro-Enabled Worksheet | ✔️ |
XLSB *xlsx | Microsoft Excel Binary Worksheet | ✔️ |
ODS *xlsx | OpenDocument Spreadsheet | ✔️ |
PPT | Microsoft PowerPoint 97-2003 Presentation | ✔️ |
PPTX | Microsoft PowerPoint Presentation | ✔️ |
PPS | Microsoft PowerPoint 97-2003 Slide Show | ✔️ |
PPSX *pptx | Microsoft PowerPoint Slide Show | ✔️ |
ODP | OpenDocument Presentation | ✔️ |
TIF, TIFF | Tagged Image File Format (TIFF) | ✔️ |
JPG, JPEG | Joint Photographic Experts Group (JPEG) | ✔️ |
PNG | Portable Network Graphics (PNG) | ✔️ |
BMP | Bitmap Picture (BMP) | ✔️ |
DWG *png | Autodesk Design Data Formats | ✔️ |
DXF *png | Drawing Interchange Format | ✔️ |
PDF (PDF/A-1a, PDF/A-1b, PDF/A-2a) | Adobe Portable Document Format (PDF) | ✔️ |
HTM *html | HyperText Markup Language (HTM) | ✔️ |
HTML | HyperText Markup Language (HTML) | ✔️ |
EML | E-mail Message (EML) | ✔️ |
EMLX *eml | E-mail Message (EMLX) | ✔️ |
VSD *vsdx | Microsoft Visio 2003-2010 Drawing | ✔️ |
VSDX | Microsoft Visio Drawing | ✔️ |
VSDM *vsdx | Microsoft Visio Drawing File Format | ✔️ |
VSS *vsdx | Microsoft Visio 2003-2010 Stencil | ✔️ |
VSSX *vsdx | Visio Stencil File Format | ✔️ |
VST *vsdx | Microsoft Visio 2013 Stencil | ✔️ |
VSTM *vsdx | Microsoft Visio Template File Format | ✔️ |
Supported Annotation Types
Annotation Type | Description |
---|---|
Area | Rectangle annotation applied to any location on a document page. |
Arrow | Pointer or arrow-style annotation for marking directions. |
Distance | Arrow at both ends, used for measuring distances between objects. |
Ellipse | Circle-based annotation for highlighting circular areas. |
Link | Web link annotation, supported in PDF, Word, and presentation documents. |
Point | Abstract point annotation for marking spots. |
Polyline | Freehand drawing line annotation. |
Resource Redaction | Fixed-position black rectangle to hide sensitive information. |
Text Field | Rectangle annotation with text inside. |
Highlight | Text-highlighting annotation, applicable only to text. |
Text Redaction | Black rectangle to hide specific text content. |
Replacement | Replace the original document text with user-provided text. |
Strikeout | Strike-through text annotation, applicable to text. |
Underline | Underline text annotation, applicable to text. |
Watermark | Add a text watermark to all pages, with optional rotation settings. |
Supported Operating Systems
GroupDocs.Annotation for .NET supports any 32-bit or 64-bit OS with .NET or .NET Core, including:
Windows
Windows 2003 and later, Vista, XP, 7, 8, 8.1, 10 (x64, x86)
Linux
Ubuntu, OpenSUSE, CentOS, and others
Mac
macOS
Supported Frameworks
- .NET Core: 3.1
- .NET Standard: 2.1
- .NET Frameworks:
- 2.0, 3.5 (until v22.5)
- 4.0, 4.5.x, 4.6.x, 4.7.x, 4.8
Development Environments
- Microsoft Visual Studio 2010 and later
- Microsoft Visual Studio for Mac
- JetBrains Rider
Installation
Add GroupDocs.Annotation to your .NET project via NuGet or download DLLs from GroupDocs.
Install via NuGet
NuGet Package Manager
- Open Solution Explorer in Visual Studio, right-click your project, and select Manage NuGet Packages.
- Search for "GroupDocs.Annotation" and click Install.
Package Manager Console
- Open Package Manager Console in Visual Studio.
- Run:
Install-Package GroupDocs.Annotation
.NET CLI
- Run the following command in your project folder:
dotnet add package GroupDocs.Annotation
Download from Website
Download assemblies from GroupDocs Releases, then add the DLL reference manually via Add Reference in Visual Studio.
Add Area Annotation to the Document
Add an area annotation to a PDF document using GroupDocs.Annotation for .NET, specifying color, opacity, and message properties.
// Import required namespaces
using (Annotator annotator = new Annotator("input.pdf"))
{
// Create a new area annotation
AreaAnnotation area = new AreaAnnotation
{
// Set background color for the annotation
BackgroundColor = 65535,
// Set position and size of the annotation box
Box = new Rectangle(100, 100, 100, 100),
// Set creation date
CreatedOn = DateTime.Now,
// Annotation message
Message = "This is area annotation",
// Set annotation opacity
Opacity = 0.7,
// Page number where the annotation will be placed
PageNumber = 0,
// Set pen color and style for the annotation border
PenColor = 65535,
PenStyle = PenStyle.Dot,
// Set pen width
PenWidth = 3,
// Add replies to the annotation
Replies = new List<Reply>
{
new Reply
{
Comment = "First comment",
RepliedOn = DateTime.Now
},
new Reply
{
Comment = "Second comment",
RepliedOn = DateTime.Now
}
}
};
// Add the annotation to the document
annotator.Add(area);
// Save the annotated document
annotator.Save("result.pdf");
}
Add Arrow Annotation to the Document
Apply an arrow annotation to a PDF document using GroupDocs.Annotation for .NET with custom properties such as pen color and style.
// Import required namespaces
using (Annotator annotator = new Annotator("input.pdf"))
{
// Create a new arrow annotation
ArrowAnnotation arrow = new ArrowAnnotation
{
// Set position and size of the arrow annotation
Box = new Rectangle(100, 100, 100, 100),
// Set creation date
CreatedOn = DateTime.Now,
// Annotation message
Message = "This is arrow annotation",
// Set annotation opacity
Opacity = 0.7,
// Page number where the annotation will be placed
PageNumber = 0,
// Set pen color and style for the annotation border
PenColor = 65535,
PenStyle = PenStyle.Dot,
// Set pen width
PenWidth = 3,
// Add replies to the annotation
Replies = new List<Reply>
{
new Reply
{
Comment = "First comment",
RepliedOn = DateTime.Now
},
new Reply
{
Comment = "Second comment",
RepliedOn = DateTime.Now
}
}
};
// Add the arrow annotation to the document
annotator.Add(arrow);
// Save the annotated document
annotator.Save("result.pdf");
}
Add Ellipse Annotation to the Document
Use GroupDocs.Annotation for .NET to add an ellipse annotation to a PDF, complete with background color, opacity, and comments.
// Import required namespaces
using (Annotator annotator = new Annotator("input.pdf"))
{
// Create a new ellipse annotation
EllipseAnnotation ellipse = new EllipseAnnotation
{
// Set background color for the ellipse
BackgroundColor = 65535,
// Set position and size of the ellipse annotation
Box = new Rectangle(100, 100, 100, 100),
// Set creation date
CreatedOn = DateTime.Now,
// Annotation message
Message = "This is ellipse annotation",
// Set annotation opacity
Opacity = 0.7,
// Page number where the annotation will be placed
PageNumber = 0,
// Set pen color and style for the annotation border
PenColor = 65535,
PenStyle = PenStyle.Dot,
// Set pen width
PenWidth = 3,
// Add replies to the annotation
Replies = new List<Reply>
{
new Reply
{
Comment = "First comment",
RepliedOn = DateTime.Now
},
new Reply
{
Comment = "Second comment",
RepliedOn = DateTime.Now
}
}
};
// Add the ellipse annotation to the document
annotator.Add(ellipse);
// Save the annotated document
annotator.Save("result.pdf");
}
Load Document from URL
Load a PDF document from a URL and add an area annotation using GroupDocs.Annotation for .NET. Save the annotated document to a specified location.
// Define the URL for the PDF file to be annotated
string url = "https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-.NET/blob/master/Examples/Resources/SampleFiles/input.pdf?raw=true";
// Load the PDF file from the URL
using (Annotator annotator = new Annotator(GetRemoteFile(url)))
{
// Create a new area annotation
AreaAnnotation area = new AreaAnnotation()
{
// Set position and size of the annotation
Box = new Rectangle(100, 100, 100, 100),
// Set background color for the annotation
BackgroundColor = 65535,
};
// Add the annotation to the document
annotator.Add(area);
// Save the annotated document to the specified location
annotator.Save("result.pdf");
}
// Method to retrieve the file as a stream from a remote URL
private static Stream GetRemoteFile(string url)
{
WebRequest request = WebRequest.Create(url);
using (WebResponse response = request.GetResponse())
return GetFileStream(response);
}
// Method to create a file stream from the web response
private static Stream GetFileStream(WebResponse response)
{
MemoryStream fileStream = new MemoryStream();
using (Stream responseStream = response.GetResponseStream())
responseStream.CopyTo(fileStream);
fileStream.Position = 0;
return fileStream;
}
Tags
Document Annotation API
| Cross-Platform Annotation
| GroupDocs.Annotation
| PDF Annotation
| Word Annotation
| Excel Annotation
| PowerPoint Annotation
| Image Annotation
| Digital Signatures
| QR-Code Signatures
| Metadata Signatures
| Stamp Signatures
| Redaction Annotations
| Replacement Annotations
| Distance Measurement
| Document Preview
| Annotation Caching
| Amazon S3 Integration
| Azure Blob Storage Integration
| FTP Support
| Web URL Support
| Commenting System
| Annotation Collaboration
| Custom Font Support
| Annotation Filters
| Image Quality Control
| Version Control for Annotations
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
.NET Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.2
- SkiaSharp (>= 2.88.6)
-
.NETStandard 2.1
- Microsoft.Extensions.DependencyModel (>= 2.0.4)
- Microsoft.Extensions.Logging.Abstractions (>= 7.0.0)
- Microsoft.Win32.Registry (>= 4.7.0)
- Newtonsoft.Json (>= 13.0.3)
- SkiaSharp (>= 2.88.6)
- SkiaSharp.NativeAssets.Linux.NoDependencies (>= 2.80.1)
- System.Diagnostics.DiagnosticSource (>= 7.0.0)
- System.Diagnostics.PerformanceCounter (>= 4.5.0)
- System.Drawing.Common (>= 6.0.0)
- System.Reflection.Emit (>= 4.7.0)
- System.Reflection.Emit.ILGeneration (>= 4.7.0)
- System.Security.Cryptography.Pkcs (>= 8.0.0)
- System.Security.Permissions (>= 4.5.0)
- System.Text.Encoding.CodePages (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
24.5.0 | 843 | 5/30/2024 |
24.4.0 | 904 | 4/8/2024 |
23.12.0 | 1,809 | 12/29/2023 |
23.6.0 | 6,650 | 6/30/2023 |
23.5.0 | 6,408 | 5/31/2023 |
23.4.0 | 2,722 | 4/11/2023 |
23.1.0 | 3,798 | 1/31/2023 |
22.11.0 | 2,140 | 11/30/2022 |
22.9.0 | 1,740 | 9/30/2022 |
22.5.1 | 2,103 | 8/9/2022 |
21.5.0 | 1,267 | 5/31/2021 |
21.4.0 | 8,757 | 4/30/2021 |
21.3.0 | 7,558 | 3/31/2021 |
21.2.0 | 49,304 | 2/26/2021 |
21.1.0 | 2,406 | 1/29/2021 |
20.11.0 | 40,694 | 11/30/2020 |
20.10.0 | 28,256 | 10/30/2020 |
20.9.0 | 24,723 | 9/30/2020 |
20.8.0 | 24,898 | 8/31/2020 |
20.7.0 | 25,154 | 7/31/2020 |
20.6.0 | 56,942 | 6/26/2020 |
20.5.0 | 40,574 | 5/29/2020 |
20.4.1 | 41,195 | 4/27/2020 |
20.4.0 | 24,054 | 4/13/2020 |
20.2.0 | 42,037 | 2/28/2020 |
20.1.0 | 25,434 | 1/31/2020 |
19.12.0 | 39,223 | 12/24/2019 |
19.11.0 | 36,809 | 11/29/2019 |
19.10.0 | 1,376 | 10/28/2019 |
19.9.0 | 1,056 | 9/25/2019 |
19.6.0 | 2,433 | 6/27/2019 |
19.4.1 | 2,023 | 5/14/2019 |
19.4.0 | 953 | 5/6/2019 |
19.3.0 | 1,771 | 3/28/2019 |
19.1.0 | 1,791 | 1/28/2019 |
18.12.0 | 2,169 | 12/5/2018 |
18.10.0 | 1,406 | 11/5/2018 |
18.9.0 | 1,343 | 10/3/2018 |
18.8.0 | 1,291 | 8/28/2018 |
18.7.1 | 1,269 | 8/6/2018 |
18.7.0 | 1,298 | 7/16/2018 |
18.6.0 | 1,346 | 6/14/2018 |
18.5.0 | 1,251 | 5/21/2018 |
18.4.0 | 1,387 | 4/16/2018 |
18.3.0 | 1,329 | 3/13/2018 |
18.2.0 | 1,334 | 2/7/2018 |
18.1.0 | 1,247 | 1/19/2018 |
17.12.0 | 11,510 | 12/7/2017 |
17.11.0 | 1,440 | 11/2/2017 |
17.10.0 | 1,344 | 10/2/2017 |