Logo dans le QR code
Un code peut comporter un logo optionnel en son centre – votre propre marque au lieu d’un simple motif QR. Le logo est intégré sous forme de pixels réels dans les téléchargements SVG et PNG ; les formats PDF et EPS ne le contiennent jamais.
Dans le Tableau de bord
Ouvrez la page de détails d’un code. À côté de l’aperçu du QR code et des boutons de téléchargement se trouve la carte Logo dans le QR code.
- Cliquez sur Sélectionner un logo et choisissez un fichier PNG, JPEG ou WebP (maximum 1 Mo – les formats plus volumineux ou différents, y compris le SVG, sont rejetés avant même le téléchargement).
- Un aperçu du fichier sélectionné apparaît accompagné d’un message :
- Aucun logo existant – l’ajout modifie le motif de points du code. Cochez la case pour confirmer, puis cliquez sur Télécharger le logo.
- Un logo est déjà défini – le remplacement change uniquement l’image au centre, le motif reste identique. Cliquez sur Remplacer le logo ; aucune confirmation n’est requise.
- Pour le supprimer, cliquez sur Supprimer le logo, cochez la case d’avertissement (la suppression modifie également le motif) et confirmez la suppression une seconde fois.
Via l’API
Télécharger ou remplacer un logo
POST /v1/codes/{id}/logo – requête multipart, champ file.
curl -X POST https://qr3.app/v1/codes/qr_a1b2c3d4/logo \ -H "Authorization: Bearer qr3_sk_..." \Réponse (HTTP 201) : le code mis à jour, avec logo_file_id défini.
Le fichier est vérifié à l’aide de ses “magic bytes”, et non de son extension ou de son Content-Type. Il est normalisé en un PNG transparent de 512 × 512 px (le rapport d’aspect est conservé). Un logo existant est remplacé – il n’y a toujours qu’un seul logo par code.
Supprimer le logo
DELETE /v1/codes/{id}/logo – sans corps (body).
curl -X DELETE https://qr3.app/v1/codes/qr_a1b2c3d4/logo \ -H "Authorization: Bearer qr3_sk_..."Réponse (HTTP 200) : le code mis à jour, logo_file_id réinitialisé à null. Idempotent – un appel sans logo existant renvoie toujours 200 et ne modifie rien.
Erreurs
| Statut | Quand |
|---|---|
| 403 | Le rôle de la clé API est viewer |
| 404 | Code non trouvé dans l’espace de travail |
| 413 | Le fichier dépasse 1 Mo |
| 422 | Le champ file est manquant, ou format autre que PNG/JPEG/WebP (SVG inclus) |
Ce qui change sur le code
qr.svg et qr.png intègrent les pixels réels du logo de manière centrée, redimensionnés à une proportion fixe de la surface du code. Tous deux augmentent pour cela la correction d’erreurs à H afin que le code reste scannable. qr.pdf et qr.eps ne sont pas affectés par un logo – ils n’en intègrent jamais et conservent le motif qu’ils auraient même sans logo.
Cache
Lorsqu’un logo est défini, qr.svg/qr.png sont servis avec Cache-Control: public, max-age=300 (5 minutes) au lieu du habituel public, max-age=86400, immutable (24 heures). Ainsi, une URL d’image intégrée ailleurs – sur une page, dans un e-mail, dans un document – prend en compte une modification de logo dans un délai maximal de 5 minutes. Une copie mise en cache avant que le code n’ait jamais eu de logo peut nécessiter jusqu’à 24 heures complètes, car elle a été mise en cache avec la durée de vie plus longue et immuable.
Impression
- Un code déjà imprimé continue de fonctionner, que le logo soit ajouté, remplacé ou supprimé – la cible encodée ne dépend jamais du logo.
- L’ajout ou la suppression d’un logo modifie le motif de points. Si le logo lui-même doit apparaître sur le support d’impression, réimprimez avec le fichier
qr.svgouqr.pngactuel – ne mélangez jamais les anciens et les nouveaux fichiers d’impression. - Le remplacement d’un logo ne modifie pas le motif ; une réimpression n’est alors qu’une question d’image souhaitée, et non de scannabilité.
qr.pdfandqr.epsne contiennent jamais de logo. Pour les maquettes d’impression devant afficher le logo, téléchargezqr.svgouqr.png.- Avant de lancer un tirage d’impression complet, effectuez toujours un test de scan sur le support réel, en particulier après une modification du motif.