Genera Códigos QR con Rust
El crate qrcode de Rust proporciona generación de códigos QR rápida y segura en memoria. Ideal para aplicaciones de alto rendimiento, WebAssembly y herramientas a nivel de sistema.
Instalación
Agrega el crate qrcode a tu Cargo.toml.
[dependencies]
qrcode = "0.14"
image = "0.25" # For PNG outputGenera Códigos QR con Rust
Ejemplos de código usando el crate qrcode.
use qrcode::QrCode;
use qrcode::render::svg;
fn main() {
let code = QrCode::new("https://qrcode.fun").unwrap();
let svg = code.render::<svg::Color>()
.min_dimensions(200, 200)
.build();
std::fs::write("qrcode.svg", &svg).unwrap();
println!("SVG QR code saved!");
}use qrcode::QrCode;
use image::Luma;
fn main() {
let code = QrCode::new("https://qrcode.fun").unwrap();
let image = code.render::<Luma<u8>>()
.dark_color(Luma([26u8]))
.light_color(Luma([255u8]))
.quiet_zone(true)
.min_dimensions(300, 300)
.build();
image.save("qrcode.png").unwrap();
println!("PNG QR code saved!");
}Genera Códigos QR vía API en Rust
Llama a la API de QRCode.fun desde Rust usando reqwest para códigos QR estilizados.
use reqwest;
use serde_json::json;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = reqwest::Client::new();
let response = client
.post("https://qrcode.fun/api/generate-qr-styled")
.json(&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" }
}))
.send()
.await?;
let result: serde_json::Value = response.json().await?;
println!("{}", &result["data"].as_str().unwrap()[..50]);
Ok(())
}Vista Previa de Código QR en Vivo
Prueba a generar un código QR con Rust ahora mismo.
Biblioteca Nativa vs API
Compara el uso del crate qrcode con la API de QRCode.fun.
| Característica | Crate qrcode | QRCode.fun API |
|---|---|---|
| Complejidad de configuración | cargo add + crate image para PNG | Una sola solicitud HTTP vía reqwest |
| Personalización | Colores vía crate image | Estilizado completo: colores, formas, logotipos |
| Soporte sin conexión | Sí | Requiere internet |
| Mantenimiento | cargo update | Siempre actualizado |
| Formatos de salida | SVG, PNG (con crate image), terminal | PNG, SVG |
Casos de Uso de Códigos QR en Rust
Escenarios comunes para códigos QR en aplicaciones Rust.
WebAssembly
Compila la generación de QR a WASM para creación ultrarrápida de códigos QR en el navegador sin bibliotecas JavaScript.
Herramientas CLI
Construye utilidades de línea de comandos que generan códigos QR para visualización en terminal, salida de archivo o integración con portapapeles.
Servidores de Alto Rendimiento
Genera códigos QR en servidores web Actix o Axum con mínima asignación de memoria y máximo rendimiento.
Sistemas Embebidos
Ejecuta generación de códigos QR en dispositivos con recursos limitados donde las abstracciones de costo cero de Rust brillan.
Preguntas Frecuentes
Preguntas comunes sobre la generación de códigos QR con Rust.
Comienza a generar códigos QR con Rust
Usa nuestro generador gratuito o integra la API en tus aplicaciones Rust.