Get Freetext Annotations in PDF using Java

Get Freetext annotation to PDF document programmaticaly using Aspose.PDF for Java Library

In order to annotate PDF file, we’ll use Aspose.PDF for Java API which is a feature-rich, powerful and easy to use conversion API for Java platform. You can download its latest version directly from Maven and install it within your Maven-based project by adding the following configurations to the pom.xml.

Repository

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java AP</name>
    <url>https://releases.aspose.com/java/repo/</url>
</repository>

Dependency

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>version of aspose-pdf API</version>
</dependency>

Get Freetext Annotation via Java


You need Aspose.PDF for Java to try the code in your environment.

  • Load PDF in an instance of Document class
  • Create a new page or get a reference to an existing one
  • Create Freetext annotation
  • Call method Add for Freetext annotation from Page.Annotations collections
  • Save the file again

System Requirements


Aspose.PDF for Java is supported on all major operating systems. Just make sure that you have the following prerequisites.

  • Microsoft Windows or a compatible OS with Java Runtime Environment for JSP/JSF Application and Desktop Applications.
  • Development environment like Eclipse or IntelliJ IDEA
  • Aspose.PDF for Java library referenced in your project.

Get Freetext Annotations from PDF - Java

Example

    public static void GetFreeTextAnnotation() {
        // Load the PDF file
        Document document = new Document(_dataDir + "sample_freetext.pdf");

        // Filter annotations using AnnotationSelector
        Page page = document.getPages().get_Item(1);
        AnnotationSelector annotationSelector = new AnnotationSelector(
                new FreeTextAnnotation(page, Rectangle.getTrivial(), new DefaultAppearance()));
        page.accept(annotationSelector);
        List<Annotation> freeTextAnnotations = annotationSelector.getSelected();

        // print results
        for (Annotation fa : freeTextAnnotations) {
            System.out.println(fa.getRect());
        }
    }