USING IRONPDF FOR JAVA

How to Convert PNG to PDF in Java (Tutorial)

Updated August 25, 2024
Share:

This article will use IronPDF for Java library to create PDF documents from image file format programmatically.

IronPDF - A Java Library

Iron Software engineers have now developed IronPDF for the Java language, which helps Java developers create new documents, edit, write, resize, and manipulate PDF documents. IronPDF allows working with every aspect of a PDF file or PDF conversion. It provides developers with a wide range of features for creating and customizing PDFs in Java. It also helps control the layout and formatting of the PDF.

IronPDF for Java is built on the capabilities of the .NET Framework, making it a versatile tool for working with PDFs compared to other open-source libraries. In addition to creating and manipulating PDFs, it primarily helps convert images and HTML files to PDF and other file formats as well.

Steps to Convert PNG to PDF in Java

Prerequisites

To create a PNG to PDF conversion application, you will need the following prerequisites downloaded and installed:

  1. Java Development Kit (JDK): The latest version of JDK must be installed on your computer to compile and run the convert PNG to PDF application. The JDK can be downloaded from the Oracle website.
  2. Maven: Maven needs to be installed as it is a build automation tool used primarily for Java projects. Maven can be downloaded from the Apache Maven website.
  3. IronPDF Java Library: Now you will need the latest version of IronPDF added as a dependency to your PNG to PDF conversion project. Add the following IronPDF dependency to your project's pom.xml file:

    <dependency>
       <groupId>com.ironsoftware</groupId>
       <artifactId>com.ironsoftware</artifactId>
       <version>2024.9.1</version>
    </dependency>
    XML
  4. You will also need to add the Slf4j dependency in the pom.xml file.

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.5</version>
    </dependency>
    XML

Once all the prerequisites are downloaded and installed, the project can now be used to convert PNG images to PDF documents in Java applications.

Add Imports to Java Main File

First of all, you will need the following imports for converting PNG images to PDF files using IronPDF in your Java application.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;
import java.nio.file.*;
import java.util.ArrayList;
import java.util.List;
JAVA

Once the imports are added, you are good to go with the image to PDF conversion.

Convert Single PNG to PDF File

IronPDF helps developers convert a single PNG or JPG image to a PDF file with a few simple steps. The Java code snippet is shown in the following example:

// Reference to the image that we want to convert
List<Path> paths = new ArrayList<>();
paths.add(Paths.get("example.png"));

// Save the image into a new PDF document.
PdfDocument.fromImage(paths).saveAs(Paths.get("example.pdf"));
JAVA

Here, you first need to get the path of the image file that you are trying to convert to PDF. Then, you add that image path to a List and call the fromImage method. Finally, call the saveAs method to save the converted PNG file to the filesystem.

Convert Multiple PNGs into a PDF File

IronPDF also allows developers to combine multiple PNG or JPG images into a single PDF document, as shown in the following code example.

// Reference to the directory containing the images that we desire to convert
Path imageDirectory = Paths.get("assets/images");

// Create an empty List to contain Paths to images from the directory.
List<Path> imageFiles = new ArrayList<>();

// Use a DirectoryStream to populate the List with paths for each image in the directory
try (DirectoryStream<Path> stream = Files.newDirectoryStream(imageDirectory, "*.{png, jpg, gif}")) {
    for (Path entry : stream) {
        imageFiles.add(entry);
    }

    // Render all targeted images as PDF content and save them together in one PDF document.
    PdfDocument.fromImage(imageFiles).saveAs(Paths.get("multiple_images.pdf"));
} catch (IOException exception) {
    throw new RuntimeException(String.format("Error converting images to PDF from directory: %s: %s",
            imageDirectory,
            exception.getMessage()),
            exception);
}
JAVA

The fromImage method in the above code can also accept a list of PNG image path objects. Each path object references a valid path to an image stored locally. In this case, the images are from the same directory, so a DirectoryStream found in java.nio.file classes is quickly used to build up a list of all the images contained in the directory.

Now, the fromImage method will render each PNG or JPG image present in the list on a separate page of the PDF document. Finally, use the saveAs method to save the converted images to the multiple_images.pdf output.

After running the project with any of the above code examples, the output is generated in PDF file format. Here, the output shown is from the "Convert PNG to PDF" Multiple Images.

How to Convert PNG to PDF in Java (Tutorial), Figure 1: PNG to PDF Output PNG to PDF Output

You can check further code examples on image conversion and also download IronPDF for Java from the official website.

How to Convert PNG to PDF in Java (Tutorial), Figure 2: IronPDF for Java IronPDF for Java

IronPDF has a great quality of rendering all images and text without losing any format. Form components are also editable in the converted PDF file.

Summary

This article demonstrates how to generate PDFs using the convert image to PDF feature of IronPDF. In conclusion, IronPDF is a powerful library developed for Java developers to work with the PDF file format. It allows developers to easily create PDF documents from multiple images from scratch. It also supports XML documents to PDF along with HTML and image files. IronPDF is a great PDF API that helps Software Engineers extract and write content from PDF files.

IronPDF for Java is free to use, but for deployment purposes, it has a commercial license starting from only $749. You can also access the free trial of the full version of IronPDF to test its functionality in production mode.

< PREVIOUS
How to Rotate PDF File in Java
NEXT >
How to Create a Table in a PDF Document Using Java (Tutorial)

Install with Maven

Version: 2024.9.1

<dependency>
  <groupId>com.ironsoftware</groupId>
  <artifactId>ironpdf</artifactId>
  <version>2024.9.1</version>
</dependency>

Ready to get started? Version: 2024.9 just released

Free Maven Download View Licenses >