Biblioteca de Códigos QR en Java

Genera Códigos QR con Java

La biblioteca ZXing (Zebra Crossing) de Java es el estándar de la industria para la generación de códigos de barras y códigos QR. Úsala en Spring Boot, Android o cualquier aplicación Java.

Instalación

Agrega ZXing a tu proyecto Java usando Maven o Gradle.

Maven
<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>core</artifactId>
    <version>3.5.3</version>
</dependency>
<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>javase</artifactId>
    <version>3.5.3</version>
</dependency>
Gradle
implementation 'com.google.zxing:core:3.5.3'
implementation 'com.google.zxing:javase:3.5.3'

Genera Códigos QR con ZXing

Ejemplos de código usando la biblioteca ZXing en Java.

Basic QR Code Generation
import com.google.zxing.*;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import java.nio.file.Path;

public class QRGenerator {
    public static void main(String[] args) throws Exception {
        BitMatrix matrix = new MultiFormatWriter().encode(
            "https://qrcode.fun",
            BarcodeFormat.QR_CODE, 300, 300
        );
        MatrixToImageWriter.writeToPath(matrix, "PNG", Path.of("qrcode.png"));
    }
}
QR Code with Custom Colors
import com.google.zxing.*;
import com.google.zxing.common.BitMatrix;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import java.io.File;

public class CustomQR {
    public static void main(String[] args) throws Exception {
        BitMatrix matrix = new MultiFormatWriter().encode(
            "https://qrcode.fun",
            BarcodeFormat.QR_CODE, 300, 300
        );

        BufferedImage image = new BufferedImage(300, 300, BufferedImage.TYPE_INT_RGB);
        int darkColor = 0xFF1A2B3C;
        int lightColor = 0xFFFFFFFF;

        for (int x = 0; x < 300; x++) {
            for (int y = 0; y < 300; y++) {
                image.setRGB(x, y, matrix.get(x, y) ? darkColor : lightColor);
            }
        }
        ImageIO.write(image, "PNG", new File("qrcode_custom.png"));
    }
}
QRCode.fun API

Genera Códigos QR vía API en Java

Llama a la API de QRCode.fun desde Java usando HttpClient para códigos QR estilizados.

Integración de API en Java
import java.net.URI;
import java.net.http.*;

public class QRCodeAPI {
    public static void main(String[] args) throws Exception {
        String json = """
            {
                "data": "https://qrcode.fun",
                "width": 300,
                "height": 300,
                "type": "png",
                "margin": 10,
                "dotsOptions": { "color": "#1A2B3C", "type": "rounded" },
                "cornersSquareOptions": { "color": "#8564C3", "type": "extra-rounded" },
                "backgroundOptions": { "color": "#FFFFFF" }
            }
            """;

        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://qrcode.fun/api/generate-qr-styled"))
            .header("Content-Type", "application/json")
            .POST(HttpRequest.BodyPublishers.ofString(json))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body().substring(0, 100));
    }
}

Vista Previa de Código QR en Vivo

Prueba a generar un código QR con Java ahora mismo.

Vista previa QR

Biblioteca Nativa vs API

Compara el uso directo de ZXing con la API de QRCode.fun.

CaracterísticaBiblioteca ZXingQRCode.fun API
Complejidad de configuraciónDependencia Maven/Gradle + BufferedImageUna sola solicitud HTTP
PersonalizaciónTamaño, corrección de errores, márgenesEstilizado completo: colores, formas, logotipos
Soporte sin conexiónRequiere internet
MantenimientoActualizar dependencia Maven/GradleSiempre actualizado
Formatos de salidaPNG, JPG, BMP vía ImageIOPNG, SVG

Casos de Uso de Códigos QR en Java

Escenarios comunes para códigos QR en aplicaciones Java.

Aplicaciones Empresariales

Genera códigos QR en APIs de Spring Boot para facturas, recibos y seguimiento de documentos en sistemas empresariales.

Aplicaciones Android

Usa ZXing en aplicaciones Android para escaneo y generación de códigos QR con integración de cámara.

Procesamiento por Lotes

Crea miles de códigos QR en trabajos por lotes para etiquetas de productos, envíos y gestión de inventario.

Generación de PDF

Incorpora códigos QR en documentos PDF usando iText o Apache PDFBox para informes y boletos.

Preguntas Frecuentes

Preguntas comunes sobre la generación de códigos QR con Java.

ZXing (Zebra Crossing) es una biblioteca de procesamiento de códigos de barras de código abierto para Java. Soporta lectura y escritura de códigos QR, códigos de barras y otros códigos de matriz 2D.

Comienza a generar códigos QR con Java

Usa nuestro generador gratuito o integra la API en tus aplicaciones Java.