Edit PDF in Java SDK

Use REST API to edit PDF in Java programmatically

When developers modify a PDF document with this Java library, what is actually being edited is the Document Object Model (DOM). Thus, almost any changes can be made to the PDF document represented as DOM. With the provided Java SDK, developers can easily edit a document: modify text, update tables, add images and so on. Just load a PDF, make the necessary changes programmatically and export the result to the same or any supported save format.

View code snippet

Edit PDF in Java using REST API

Our Java library gives developers the ability to modify a PDF document directly by editing its Document Object Model (DOM), which means no additional software needs to be installed.

Edit text in PDF file using Java

The most popular case to edit a PDF file is text editing. With the given software solution, you can add, modify or delete text using Java within the document.

Edit table in PDF file using Java

Another popular PDF editing option is table editing. Our Java SDK allows you to work with tables and text in table cells.

Java developers can add or remove table and table cells, as well as add, edit and remove text within them.

Add an image to PDF file using Java

Besides editing text and tables in PDF, there is another common option: adding images to a document in Java. Java developers can also add an image into a PDF file using DOM.

Edit PDF programmatically

Try this powerful Java SDK and evaluate some options in PDF document editing. Using the following example, load your PDF document and make some changes: add text, add a table and a table cell with text or insert an image into the PDF document:

Upload a document you want to modify
Run code
Upload an image you want insert
Select the target format from the list
import com.aspose.words.cloud.*;

ApiClient apiClient = new ApiClient("####-####-####-####-####", "##################", null);
WordsApi wordsApi = new WordsApi(apiClient);

byte[] requestDocument = Files.readAllBytes(Paths.get(
   "Input.pdf").toAbsolutePath());
ParagraphInsert requestParagraph = new ParagraphInsert();
requestParagraph.setText("Morbi enim nunc faucibus a.");

InsertParagraphOnlineRequest insertParagraphRequest = new InsertParagraphOnlineRequest(
   requestDocument, requestParagraph, null, null, null, null, null, null, null, null);
InsertParagraphOnline insertParagraph = wordsApi.insertParagraphOnline(insertParagraphRequest);

ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(
   insertParagraph.getDocument().iterator().next(), "pdf", null, null, null, null);
ConvertDocument convert = wordsApi.convertDocument(convertRequest);
import com.aspose.words.cloud.*;

ApiClient apiClient = new ApiClient("####-####-####-####-####", "##################", null);
WordsApi wordsApi = new WordsApi(apiClient);

byte[] requestDocument = Files.readAllBytes(Paths.get(
   "Input.pdf").toAbsolutePath());
TableInsert requestTable = new TableInsert();
requestTable.setColumnsCount(1);
requestTable.setRowsCount(2);

InsertTableOnlineRequest insertTableRequest = new InsertTableOnlineRequest(requestDocument, 
   requestTable, "", null, null, null, null, null, null);
InsertTableOnline insertTable = wordsApi.insertTableOnline(insertTableRequest);

ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(
   insertTable.getDocument().iterator().next(), "pdf", null, null, null, null);
ConvertDocument convert = wordsApi.convertDocument(convertRequest);
import com.aspose.words.cloud.*;

ApiClient apiClient = new ApiClient("####-####-####-####-####", "##################", null);
WordsApi wordsApi = new WordsApi(apiClient);

byte[] requestDocument = Files.readAllBytes(Paths.get(
   "Input1.pdf").toAbsolutePath());
DrawingObjectInsert requestDrawingObject = new DrawingObjectInsert();
requestDrawingObject.setHeight((double)0);
requestDrawingObject.setLeft((double)0);
requestDrawingObject.setTop((double)0);
requestDrawingObject.setWidth((double)0);
requestDrawingObject.setRelativeHorizontalPosition(
   DrawingObjectInsert.RelativeHorizontalPositionEnum.MARGIN);
requestDrawingObject.setRelativeVerticalPosition(
   DrawingObjectInsert.RelativeVerticalPositionEnum.MARGIN);
requestDrawingObject.setWrapType(DrawingObjectInsert.WrapTypeEnum.INLINE);

byte[] requestImageFile = Files.readAllBytes(Paths.get(
   "Input2.pdf").toAbsolutePath());
InsertDrawingObjectOnlineRequest insertDrawingObjectRequest = 
   new InsertDrawingObjectOnlineRequest(requestDocument, requestDrawingObject, 
      requestImageFile, "sections/0", null, null, null, null, null, null);
InsertDrawingObjectOnline insertDrawingObject = 
   wordsApi.insertDrawingObjectOnline(insertDrawingObjectRequest);

ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(
   insertDrawingObject.getDocument().iterator().next(), "pdf", null, null, null, null);
ConvertDocument convert = wordsApi.convertDocument(convertRequest);
Run code
  
Copy Java code to the clipboard

How to Edit PDF in Java

  1. Install Aspose.Words Cloud for Java
  2. Add a library reference (import the library) to your Java project
  3. Load PDF to edit in Java
  4. Insert content at the beginning of PDF
  5. Download the result document from the cloud storage

Java library to use PDF editing

Install 'Aspose.Words Cloud SDK for Java' using Maven build automation tool.

Add this dependency to your project's POM: aspose-cloud artifact.aspose-cloud-releases http://artifact.aspose.cloud/repo com.aspose aspose-words-cloud 22.4.0

As an alternative, you can clone Aspose.Words Cloud SDK for Java source code from GitHub and use it in your project. Please follow these Instructions to quickly get the necessary security credentials and access our REST API.

System Requirements

Refer to the Repository Documentation to see the details.

Other supported file formats

You can perform edit operation for other file formats:

5%

Subscribe to Aspose Product Updates

Get monthly newsletters and offers directly delivered to your mailbox.

© Aspose Pty Ltd 2001-2024. All Rights Reserved.