Setting the Position of the Image in PDF Document using Java

17 Jun, 2021
To set the Position of the Image in a PDF document using Java multiple external dependencies need to download first. Setting the Position of the Image in a PDF, use the iText library. These are the steps that should be followed to Set the Position of the Image in a PDF using java.
1. Creating a PdfWriter object: The PdfWriter class represents the DocWriter for a PDF. The constructor of this class accepts a string, i.e. the path of the file where the PDF is to be created. 
2. Creating a PdfDocument object: The PdfDocument class is the class that represents the PDF Document in iText, to instantiate this class in write mode, you need to pass an object of the class PdfWriter (i.e. pdfwriter from above code) to its constructor. 
3. Creating the Document object: The Document class is the root element when creating a self-sufficient PDF. One of the constructors of this class accepts an object of the class PdfDocument (i.e. pdfdocument). 
4. Create an Image object: We need the image object to manage the images. In order to create an image object, we need to create an ImageData object. We can create it bypassing the string parameter that represents the path of the image to create() method of the ImageDataFactory class. Now we can create an image object by passing the ImageData object, as a parameter to the constructor of the Image class.5. Setting the position of the image: We will use setFixedPosition() method of the Image to set the position of the image in a PDF document. We pass the desired coordinates of position to setFixedPosition() method. 
6. Add image to the Pdf Document: Add the image object using the add() method of the Document class, and close the document using the close() method of the Document class.The following are dependencies required for executing the program:
io-7.1.13.jar
kernel-7.1.13.jar
layout-7.1.13.jar
Below is the implementation of the above approach:
Java
// Setting the Position of the Image// in PDF Document using Javaimport com.itextpdf.io.image.ImageData;import com.itextpdf.io.image.ImageDataFactory; import com.itextpdf.kernel.pdf.PdfDocument;import com.itextpdf.kernel.pdf.PdfWriter; import com.itextpdf.layout.Document;import com.itextpdf.layout.element.Image; public class SetImagePosition {    public static void main(String args[]) throws Exception    {        try {            // path where the pdf is to be created.            String path = "F:/JavaPdf/setImagePosition.pdf";            PdfWriter pdfwriter = new PdfWriter(path);             // Creating a PdfDocument object.            // passing PdfWriter object constructor            PdfDocument pdfdocument                = new PdfDocument(pdfwriter);             // Creating a Document and            // passing pdfDocument object            Document document = new Document(pdfdocument);             // Create an ImageData object            String imageFile = "F:/JavaPdf/image.png";            ImageData data                = ImageDataFactory.create(imageFile);            // Creating an Image object            Image image = new Image(data);             // Set the position of the image.            image.setFixedPosition(200, 300);             // Adding image to the document            document.add(image);            // Closing the document            document.close();             System.out.println(                "Image  position set successfully in pdf");        }        catch (Exception e) {            System.out.println(                "unable to set image position due to " + e);        }    }}
  
Output:
 
Image  position set successfully in pdf
PDF:
 
 
adnanirshad158
Java
Java Programs
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.