Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / Convertir imágenes JPG a PDF

Convertir imágenes JPG a PDF

Autor jc mouse miércoles, noviembre 27, 2019

En este post vemos un ejemplo de como convertir un archivo de imagen JPG en un archivo PDF utilizando para ellos la librería iText.

¿Qué es iText?

iText es una biblioteca Open Source para crear y manipular archivos PDF, RTF, y HTML en Java. Fue escrita por Bruno Lowagie, Paulo Soares, y otros; está distribuida bajo la Affero General Public License (AGPL). [Santa Wikipedia]

¿Qué Necesitamos?

  • Librería iText
  • Java 8 o superior
  • Una imagen JPG
  • Netbeans o Eclipse (o el IDE de tu preferencia)

Manos a la obra

La imagen que se utilizara tendrá una dimensión de 500×632 pixeles, la imagen es la siguiente:

Abuelo simpsons seguridad

El código para la conversión de JPG a PDF es el siguiente:

import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Jpeg;
import com.itextpdf.text.Rectangle;
import com.itextpdf.text.pdf.PdfWriter;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;

/**
 * @see https://www.jc-mouse.net/
 * @author mouse
 */
public class Main {

    public static void main(String[] args) {

        final int ANCHO = 500;
        final int ALTO = 632;
        final String DESTINO = "E:\\test.pdf";
        final String ORIGEN = "E:\\abesimpson.jpg";

        System.out.println("Inicio");
        //Se crea documento con un tamaño en especifico, 
        //tambien se puede usar PageSize.LETTER (carta) o similares
        Document document = new Document(new Rectangle(ANCHO, ALTO));
        //margenes
        document.setMargins(0, 0, 0, 0);

        try {
            //Se crea PDF
            PdfWriter.getInstance(document, new FileOutputStream(DESTINO));
            document.open();
            //se lee imagen origen
            BufferedImage image = ImageIO.read(new File(ORIGEN));
            //convierte la imagen en un array de bytes
            byte[] imageInByte;
            try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
                ImageIO.write(image, "jpg", baos);
                baos.flush();
                imageInByte = baos.toByteArray();

                //Un JPEG es la representacion de un elemento grafico (JPEG)
                //que debe insertarse en el documento
                document.add(new Jpeg(imageInByte, 640, 640));
                System.out.println("Fin");
            } catch (Exception e) {
                System.err.println(e.getMessage());
            }
        } catch (DocumentException | IOException e) {
            System.err.println(e.getMessage());
        } finally {
            if (document.isOpen()) {
                document.close();
            }
        }
    }
}

Ejecutando obtenemos:

convert jpg to pdf

enjoy!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Pruebas funcionales con AssertJ Swing

Pruebas funcionales con AssertJ Swing

AssertJ Swing es una biblioteca para Java que proporciona una interfaz fluida para la realización automatizada de prueba...

Crea presentaciones Power Point desde Java

Crea presentaciones Power Point desde Java

Apache POI es la API de Java para el trabajo con archivos de Microsoft como son Word, Excel y Power Point. Apache POI se...

CUF: Código Único de Factura

CUF: Código Único de Factura

Este 2019 se implementara en Bolivia un nuevo Sistema de Facturación Electrónica con nuevas características y medidas de...

TextView Autocompletado

TextView Autocompletado

Un TextView autocompletado nos facilita el ingreso de información en aplicaciones móviles ya que te muestra posibles opc...

Elimina el fondo de tus fotografías en 5 segundos

Elimina el fondo de tus fotografías en 5 segundos

Si te gusta realizar tus propios memes o foto montajes pero tienes poca o nula experiencia en editores gráficos como Pho...

Reproducir video en java en un momento determinado

Reproducir video en java en un momento determinado

Para quienes hayan trabajado con JMF saben que es una librería de Java desarrollada por Sun Microsystems para facilitar...

Comparte lo que sabes

Categorias

Últimas entradas

WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es...

Muchas de las innovaciones computacionales de la NASA se desarrollaron para ayudar a explorar el espacio, pero ahora la...

TikTok es una plataforma de microvideos muy popular entre los jóvenes el cual cuenta ya con millones de videos cortps de...

Una clase JTree permite mostrar datos de una forma jerárquica y en realidad este objeto no contiene sus datos; es decir,...

Herramientas

Generador de Enlaces a Whatsapp