Bibliothèque de Codes QR Rust

Générer des Codes QR avec Rust

Le crate qrcode de Rust fournit une génération de codes QR rapide et sûre en mémoire. Idéal pour les applications haute performance, WebAssembly et les outils système.

Installation

Ajoutez le crate qrcode à votre Cargo.toml.

Cargo.toml
[dependencies]
qrcode = "0.14"
image = "0.25"  # For PNG output

Générer des Codes QR avec Rust

Exemples de code utilisant le crate qrcode.

QR Code as SVG
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!");
}
QR Code as PNG
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!");
}
QRCode.fun API

Générer des Codes QR via API en Rust

Appelez l'API QRCode.fun depuis Rust avec reqwest pour des codes QR stylisés.

Intégration API Rust
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(())
}

Aperçu du Code QR en Direct

Essayez de générer un code QR avec Rust maintenant.

Aperçu QR

Bibliothèque Native vs API

Comparez l'utilisation du crate qrcode avec l'API QRCode.fun.

FonctionnalitéCrate qrcodeQRCode.fun API
Complexité de configurationcargo add + crate image pour PNGUne seule requête HTTP via reqwest
PersonnalisationCouleurs via crate imageStylisation complète : couleurs, formes, logos
Support hors ligneOuiNécessite internet
Maintenancecargo updateToujours à jour
Formats de sortieSVG, PNG (avec crate image), terminalPNG, SVG

Cas d'Utilisation des Codes QR en Rust

Scénarios courants pour les codes QR dans les applications Rust.

WebAssembly

Compilez la génération de QR en WASM pour une création ultra-rapide de codes QR côté navigateur sans bibliothèques JavaScript.

Outils CLI

Créez des utilitaires en ligne de commande qui génèrent des codes QR pour l'affichage terminal, la sortie fichier ou l'intégration presse-papiers.

Serveurs Haute Performance

Générez des codes QR dans des serveurs web Actix ou Axum avec une allocation mémoire minimale et un débit maximal.

Systèmes Embarqués

Exécutez la génération de codes QR sur des appareils à ressources limitées où les abstractions à coût nul de Rust excellent.

Questions Fréquemment Posées

Questions courantes sur la génération de codes QR avec Rust.

Le crate qrcode est le choix le plus populaire. Il génère des codes QR sous forme de chaînes SVG ou de matrice que vous pouvez rendre avec le crate image.

Commencez à générer des codes QR avec Rust

Utilisez notre générateur gratuit ou intégrez l'API dans vos applications Rust.