HTML JPG PDF XML DOCX
  Product Family
PDF

Add strikeout text annotations to PDF documents via Java SDK

API for adding strikeout text annotations to PDF documents using Aspose.PDF Cloud Java SDK.

Get Started

How to imsert strikeout text annotations to PDF documents using Cloud Java SDK

In order to add strikeout annotations to PDF documents via Cloud Java SDK , we’ll use Aspose.PDF Cloud Java SDK This Cloud SDK allows you to easily build cloud-based PDF creator, editor & converter apps in Java language for various cloud platforms. Open Repository package manager, search for Aspose.PDF Cloud and install. You may also use the following command from the Package Manager Console for install it using Maven.

Add Aspose Cloud repository to your application pom.xml

Add Aspose Cloud repository


    <repositories>
        <repository>
            <id>aspose-cloud</id>
            <name>Aspose Cloud Repository</name>
            <url>https://releases.aspose.cloud/java/repo/</url>
        </repository>
    </repositories>

To install the API client library to your local Maven repository, simply execute:

Installation from Github


    mvn clean install

To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:

Deploy Maven repository


    mvn clean deploy

Steps to add annotations using Java SDK

Aspose.PDF Cloud developers can easily load & append annotations to PDF documents in just a few lines of code.

  1. Uploads the input PDF.
  2. Creates a new StrikeOutAnnotation with properties like position, color, and text.
  3. Adds it to the desired page using Aspose.PDF Cloud API.
  4. Validates the response.
  5. Downloads the updated document locally.
 

This sample code shows adding annotations to PDF document


    package com.aspose.asposecloudpdfusecases.annotations;

    import java.io.File;
    import java.nio.file.Path;
    import java.nio.file.StandardCopyOption;
    import java.util.ArrayList;
    import java.util.List;
    import com.aspose.asposecloudpdf.api.PdfApi;
    import com.aspose.asposecloudpdf.model.AnnotationFlags;
    import com.aspose.asposecloudpdf.model.AsposeResponse;
    import com.aspose.asposecloudpdf.model.Color;
    import com.aspose.asposecloudpdf.model.HorizontalAlignment;
    import com.aspose.asposecloudpdf.model.Point;
    import com.aspose.asposecloudpdf.model.Rectangle;
    import com.aspose.asposecloudpdf.model.StrikeOutAnnotation;
    import com.aspose.asposecloudpdf.model.VerticalAlignment;

    public class AnnotationAddStrikeout {
        public static void Create() {
            String REMOTE_FOLDER   = "Your_Temp_Pdf_Cloud";
            String LOCAL_FOLDER    = "c:\\Samples";
            String PDF_DOCUMENT    = "sample.pdf";
            String PDF_OUTPUT      = "annotation_add_strikeout_output.pdf";
            Integer PAGE_NUMBER = 1;

            String NEW_SO_ANNOTATION_TEXT        = "NEW STRIKEOUT TEXT ANNOTATION";
            String NEW_SO_ANNOTATION_DESCRIPTION = "This is a sample strikeout text annotation";
            String NEW_SO_ANNOTATION_SUBJECT     = "Strikeout Text Box Subject";
            String NEW_SO_ANNOTATION_CONTENTS    = "Strikeout annotation sample contents";

            try {
                PdfApi pdfApi = new PdfApi(API_KEY, API_SECRET);

                // upload local PDF file to remote storage
                File file = new File(Path.of(LOCAL_FOLDER, PDF_DOCUMENT).toString());
                pdfApi.uploadFile(Path.of(REMOTE_FOLDER , PDF_DOCUMENT).toString(), file, null);
                System.out.println(String.format("File '%s' successfully uploaded!", Path.of(LOCAL_FOLDER, PDF_DOCUMENT).toString()));

                StrikeOutAnnotation annotation = new StrikeOutAnnotation();
                annotation.setName("StrikeOut_Text_Annotation");
                annotation.setRect(new Rectangle().LLX(100.).LLY(350.).URX(450.).URY(400.));
                annotation.setHorizontalAlignment(HorizontalAlignment.LEFT);
                annotation.setVerticalAlignment(VerticalAlignment.TOP);
                annotation.setRichText(NEW_SO_ANNOTATION_TEXT);
                annotation.setSubject(NEW_SO_ANNOTATION_SUBJECT);
                annotation.setContents(NEW_SO_ANNOTATION_CONTENTS);
                annotation.setTitle(NEW_SO_ANNOTATION_DESCRIPTION);
                annotation.setZindex(1);
                annotation.setColor(new Color().A(255).G(255));

                annotation.setModified("11/20/2025 00:00:00.000 AM");

                List<Point> points = new ArrayList<>();
                points.add(new Point().X(10.).Y(10.));
                points.add(new Point().X(20.).Y(10.));
                points.add(new Point().X(10.).Y(20.));
                points.add(new Point().X(10.).Y(10.));

                annotation.setQuadPoints(points);

                List<AnnotationFlags> flags = new ArrayList<>();
                flags.add(AnnotationFlags.DEFAULT);
                annotation.flags(flags);

                List<StrikeOutAnnotation> annotations = new ArrayList<>();
                annotations.add(annotation);

                AsposeResponse response = pdfApi.postPageStrikeOutAnnotations(PDF_DOCUMENT, PAGE_NUMBER, annotations, null, REMOTE_FOLDER);
                if (response.getCode() != 200)
                    System.err.println("Error: unexpected error when adding annotation! '" + response.getStatus() + "'");
                else{
                    // download changed PDF file from remote folder...
                    File f = pdfApi.downloadFile(Path.of(REMOTE_FOLDER , PDF_DOCUMENT).toString(), null, null);
                    java.nio.file.Files.copy(Path.of(f.getPath()), Path.of(LOCAL_FOLDER, PDF_OUTPUT), StandardCopyOption.REPLACE_EXISTING);
                    System.out.println(String.format("File '%s' successfully dowloaded!", Path.of(LOCAL_FOLDER, PDF_OUTPUT).toString()));                
                    System.out.println("Successfully added annotation in document ! '" + PDF_OUTPUT + "'");
                }
            }
            catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
 

Work with the annotations in PDF via Java SDK

Adding annotations to a PDF serves many important purposes across different use cases. One of the most common reasons is for review and feedback. Annotations let users highlight specific parts of a document, leave comments, ask questions, or suggest changes. This makes the review process more efficient and organized, especially when multiple collaborators are involved. Add the Annotations into PDF documents with Aspose.PDF Cloud Java SDK.

With our Java SDK you can

  • Add PDF document’s header & footer in text or image format.
  • Add tables & text or image stamps to PDF documents.
  • Append multiple PDF documents to an existing file.
  • Work with PDF attachments, annotations, & form fields.
  • Apply encryption or decryption to PDF documents & set a password.
  • Delete all stamps & tables from a page or entire PDF document.
  • Delete a specific stamp or table from the PDF document by its ID.
  • Replace single or multiple instances of text on a PDF page or from the entire document.
  • Extensive support for converting PDF documents to various other file formats.
  • Extract various elements of PDF files & make PDF documents optimized.
  • You can try out our free App to add the annotations into PDF files online and test the functionality.

  •