Cómo convertir GIF a PDF en Java

Cómo convertir GIF a PDF en Java

El formato de archivo PDF es uno de los archivos vectoriales más populares. Por otro lado, GIF se basa en imágenes raster y ofrece mucho a la hora de mostrar imágenes como una animación. En esta publicación de blog, aprenderá cómo convertir GIF a PDF en una aplicación Java. Por lo tanto, instalará esta biblioteca de procesamiento de documentos para crear mediante programación un convertidor de GIF a PDF. La automatización del proceso de conversión de GIF a PDF definitivamente le dará a su aplicación comercial una ventaja competitiva.

Pasarás por los siguientes puntos:

Conversión de GIF a PDF - Instalación de la API

Esta biblioteca de procesamiento de documentos es muy sencilla de instalar en su proyecto Java. Sin embargo, puede descargar el archivo JAR o instalar esta biblioteca usando las siguientes configuraciones de Maven.

<repository>
   <id>AsposeJavaAPI</id>
   <name>Aspose Java API</name>
   <url>https://releases.aspose.com/java/repo/</url>
 </repository> 
<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-words</artifactId>
  <version>22.10</version>
  <classifier>jdk17</classifier>
</dependency>

Cómo convertir GIF a PDF en Java

Una vez que la biblioteca está instalada, puede comenzar a escribir el código fuente para crear un convertidor de GIF a PDF mediante programación.

Puede seguir los pasos y el fragmento de código que se indica a continuación:

  1. Crea una instancia de la clase Document.
  2. Inicializa un objeto de la clase DocumentBuilder y vincula el objeto Documento.
  3. Ahora, cargue el archivo GIF de origen y cree un flujo de imágenes llamando al método createImageInputStream que toma la entrada del objeto File.
  4. Cree un objeto de la clase ImageReader, acceda al método getImageReaders que devuelve un iterador que contiene todos los ImageReaders actualmente registrados que afirman poder decodificar el objeto proporcionado, normalmente un ImageInputStream.
  5. Invoque el método setInput que establece la fuente de entrada para usar en el ImageInputStream dado u otro objeto.
  6. Obtenga el número de cuadros en la imagen llamando al método getNumImages.
  7. Bucle a través de todos los fotogramas.
  8. Inserte un salto de sección antes de cada página nueva, en el caso de una imagen de varios fotogramas llamando al método insertBreak.
  9. Seleccione el cuadro activo llamando al método read.
  10. Obtenga la configuración de página actual llamando al método getPageSetup y asignándolo al objeto de clase PageSetup.
  11. Invoque el método setPageWidth para establecer el ancho de la página.
  12. El método setPageHeight guardará la altura de la página.
  13. Llame al método insertImage para insertar la imagen en el documento y colocarla en la esquina superior izquierda de la página.
  14. Guarde el archivo en formato de archivo PDF invocando el método save.

Copie y pegue el siguiente código en su archivo principal:

 // Crea una instancia de la clase Document. 
 Document doc = new Document();
 // Inicializa un objeto de la clase DocumentBuilder y vincula el objeto Document. 
 DocumentBuilder builder = new DocumentBuilder(doc);
 // Ahora, cargue el archivo GIF de origen y cree un flujo de imágenes llamando al método createImageInputStream que recibe información del objeto de archivo.  
 ImageInputStream iis = ImageIO.createImageInputStream(new File("sample.gif"));
 // Cree un objeto de la clase ImageReader. Acceda al método getImageReaders que devuelve un iterador que contiene todos los ImageReaders actualmente registrados que afirman poder decodificar el objeto proporcionado, normalmente un ImageInputStream. 
 ImageReader reader = ImageIO.getImageReaders(iis).next();
 // Invoque el método setInput que establece la fuente de entrada para usar en el ImageInputStream u otro objeto dado. 
 reader.setInput(iis, false);
 // Obtenga el número de fotogramas de la imagen llamando al método getNumImages.
 int framesCount = reader.getNumImages(true);
 // Bucle a través de todos los fotogramas.
 for (int frameIdx = 0; frameIdx < framesCount; frameIdx++) {
     // Inserte un salto de sección antes de cada página nueva, en el caso de una imagen de varios fotogramas llamando al método insertBreak. 
     if (frameIdx != 0)
         builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE);
     // Seleccione el marco activo llamando al método de lectura. 
     BufferedImage image = reader.read(frameIdx);
     // Obtenga la configuración de página actual llamando al método getPageSetup y asignándolo al objeto de clase PageSetup. 
     PageSetup ps = builder.getPageSetup();
     // Invoque el método setPageWidth para establecer el ancho de la página. 
     ps.setPageWidth(ConvertUtil.pixelToPoint(image.getWidth()));
     // El método setPageHeight guardará la altura de la página. 
     ps.setPageHeight(ConvertUtil.pixelToPoint(image.getHeight()));
     // Llame al método insertImage para insertar la imagen en el documento y colocarla en la esquina superior izquierda de la página. 
     builder.insertImage(
             image,
             RelativeHorizontalPosition.PAGE,
             0,
             RelativeVerticalPosition.PAGE,
             0,
             ps.getPageWidth(),
             ps.getPageHeight(),
             WrapType.NONE);
 }

 if (iis != null) {
     iis.close();
     reader.dispose();
 }
 // Guarde el archivo como formato de archivo PDF invocando el método de guardado. 
 doc.save("gifToPdf.pdf");

La salida se puede ver en la siguiente imagen:

Conversor de GIF a PDF

Obtenga una licencia gratis

Puede aprovechar una licencia temporal gratuita para probar la API sin limitaciones de evaluación.

Resumiendo

Estamos terminando esta publicación de blog aquí. ha explicado cómo convertir GIF a PDF en Java utilizando unas pocas líneas de código fuente. Además, puede instalar esta biblioteca de procesamiento de documentos para crear un convertidor de GIF a PDF mediante programación. Además, puedes visitar la documentación para conocer otras características interesantes.

Además, le sugerimos que siga nuestra Guía de introducción.

Finalmente, conholdate.com está escribiendo nuevas publicaciones de blog. Por lo tanto, manténgase en contacto para recibir actualizaciones periódicas.

Hacer una pregunta

Puede informarnos acerca de sus preguntas o consultas en nuestro foro.

preguntas frecuentes

¿Cómo convierto un GIF a PDF?

Puede realizar la conversión de GIF a PDF mediante programación utilizando esta biblioteca de Java. Además, visite este enlace para obtener el fragmento de código.

Ver también