Aspose.PDF FOSS for .NET ships with a rich set of annotation and form-field APIs that let you mark up, link, and interact with PDF documents entirely in managed code — no license key required.

Annotations at a glance

The library’s AnnotationCollection class provides typed helper methods for every standard PDF annotation. Adding a sticky note is a single call:

page.Annotations.AddTextAnnotation(
    new Rectangle(72, 720, 200, 740),
    contents: "Review needed",
    title: "Editor",
    open: true);

Link annotations combine a clickable rectangle with a PdfAction:

var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
    new Rectangle(50, 700, 200, 720), action);

The same pattern applies to highlights, underlines, squares, circles, lines, and ink (freehand) annotations — each with a dedicated Add* method.

Interactive form fields

AcroForm fields are accessed through Document.Form. Iterate Form.Fields to read field values, or use the Form facade for high-level fill operations:

using var form = new Form("input.pdf", "output.pdf");
form.FillField("Name", "Alice");
form.Save();

Field subclasses include TextBoxField, CheckboxField, RadioButtonField, ComboBoxField, ListBoxField, and SignatureField.

Flattening and the visitor pattern

Call Annotation.Flatten() to burn an annotation’s visual appearance into the page content. Use AnnotationSelector to filter annotations by type through the visitor pattern — no manual casting required.

Getting Started

Install with:

dotnet add package Aspose.Pdf.Foss

For step-by-step guides, see the Annotations and Forms developer guide and the how-to article.