Skip to content

kapp.Utils.QRCode

Génère un QR code directement dans une appli ou un widget, sans charger de script externe.

Utilitaire partagé appli + widget : API identique.

Méthode

  • toDataURL(content: string, options?: QRCodeOptions): Promise<string> — renvoie une image PNG sous forme de data URL (data:image/png;base64,…), utilisable directement dans le src d'une image.

Options disponibles :

  • width?: number — largeur demandée en pixels ;
  • margin?: number — marge blanche autour du QR code, en modules (défaut : 4) ;
  • scale?: number — nombre de pixels par module, ignoré si width est fourni ;
  • errorCorrectionLevel?: 'L' | 'M' | 'Q' | 'H' | 'low' | 'medium' | 'quartile' | 'high' — niveau de correction (défaut : M) ;
  • color?: { dark?: string, light?: string } — couleurs hexadécimales RGBA (défauts : #000000ff et #ffffffff).

Exemple

js
const src = await kapp.Utils.QRCode.toDataURL('https://kappapps.app', {
    width: 280,
    margin: 2,
    errorCorrectionLevel: 'H',
    color: {
        dark: '#7c3aedff',
        light: '#ffffffff',
    },
});

const image = document.createElement('img');
image.src = src;
image.alt = 'Ouvrir Kappapps';
image.width = 280;
image.height = 280;
document.body.appendChild(image);

Pièges

  • La méthode est asynchrone : utilise await.
  • Le contenu ne peut pas être vide.
  • Garde un fort contraste entre dark et light pour que les téléphones puissent lire le code.
  • Un niveau de correction plus élevé rend le code plus robuste, mais aussi plus dense.