En varios casos, es posible que deba convertir una colección de imágenes en un archivo PDF. Por ejemplo, es posible que desee insertar todas las imágenes de un álbum en un solo archivo PDF. Por otro lado, es posible que necesite generar un PDF a partir de las imágenes de un documento escaneado. Para realizar la conversión de imagen a PDF, este artículo cubre cómo generar un PDF a partir de múltiples imágenes usando Java.

API de Java para conversión de imagen a PDF

Aspose.PDF for Java es una potente API que proporciona funciones básicas y avanzadas de manipulación de PDF. Te permite generar nuevos archivos PDF y modificar los existentes con bastante facilidad. Puede descargar el JAR de la API o instalarlo usando las siguientes configuraciones de Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>21.2</version>
</dependency>

Pasos para generar PDF a partir de imágenes

Los siguientes son los pasos que seguiremos para generar un archivo PDF a partir de imágenes en este artículo.

  • Primero, cree un nuevo documento PDF.
  • Obtenga la lista de nombres de archivo de las imágenes en una matriz.
  • Para cada archivo de imagen de la lista, haga lo siguiente:
    • Agregue una nueva página al documento PDF y establezca sus propiedades.
    • Cargue cada archivo de imagen en un flujo de archivos de la lista.
    • Agregar imagen a la colección de párrafos de la página.
  • Finalmente, guarde el documento PDF.

Genere PDF a partir de imágenes usando Java

Veamos ahora cómo implementar cada uno de los pasos mencionados anteriormente usando Aspose.PDF for Java.

El siguiente ejemplo de código muestra cómo generar un archivo PDF a partir de imágenes en Java.

// Instanciar objeto de documento
Document doc = new Document();

// Acceder a los archivos de imagen en la carpeta
String imageDir = "D:/Images/";
File file = new File(imageDir);
String[] fileList = file.list();

for (String fileName : fileList) {
	// Agregar una página a la colección de páginas del documento
	Page page = doc.getPages().add();

	// Cargue el archivo de imagen de origen en el objeto Stream
	java.io.FileInputStream fs = new java.io.FileInputStream(imageDir + fileName);

	// Establezca los márgenes para que la imagen quepa, etc.
	page.getPageInfo().getMargin().setBottom(0);
	page.getPageInfo().getMargin().setTop(0);
	page.getPageInfo().getMargin().setLeft(0);
	page.getPageInfo().getMargin().setRight(0);
	page.setCropBox(new com.aspose.pdf.Rectangle(0, 0, 400, 400));

	// Crear un objeto de imagen
	Image image1 = new Image();

	// Agregue la imagen a la colección de párrafos de la sección.
	page.getParagraphs().add(image1);

	// Establecer el flujo de archivos de imagen
	image1.setImageStream(fs);
}

// Guardar el archivo PDF resultante
doc.save("document.pdf");

Obtenga una licencia de API gratuita

En caso de que quiera probar la API sin limitaciones de evaluación, puede obtener una licencia temporal gratuita.

Conclusión

En este artículo, aprendió cómo generar un archivo PDF basado en múltiples imágenes usando Java. La guía paso a paso y el ejemplo de código demostraron cómo obtener imágenes de una carpeta e insertarlas en el PDF. Puede explorar más sobre la API PDF de Java usando documentación.

Ver también