Create shape annotations in PDFs using Java

Annotations are created using the AnnotationProvider.AddAnnotationJson method. To create an annotation on a page, use the annotation JSON format to add the annotation you want.

Creating shape annotations

Shape annotations of the following types can be created (click the links for the JSON format specification):

Here’s an example of adding an ellipse annotation with JSON:

{
"bbox": [10, 10, 400, 400],
"blendMode": "normal",
"creatorName": "Me",
"opacity": 1,
"pageIndex": 0,
"pdfObjectId": 363,
"strokeColor": "#F74A3E",
"fillColor": "#FFFB00",
"strokeWidth": 3,
"type": "pspdfkit/shape/ellipse",
"v": 1
}

To create rectangles, see the rectangle annotation guide. For other shapes, refer to the annotation [JSON format][shape-annotations].

The JSON can be loaded from a file and added using addAnnotationJson:

String jsonString = Files.readAllBytes(Paths.get("path/to/my-annotation.json")).toString();
document.getAnnotationProvider().addAnnotationJson(new JSONObject(jsonString));