Een QR-code kan een logo hebben dankzij foutcorrectie: een deel van elke code is reservegegevens, waarmee een lezer herstelt wat hij niet kan lezen. Een logo gebruikt dat budget bewust. Gebruik je er te veel van, dan scant de code niet meer.
Het budget per niveau
| Niveau | Herstelt ongeveer | Met een logo |
|---|---|---|
| L | 7% | Nee |
| M | 15% | Alleen een klein logo |
| Q | 25% | Ja |
| H | 30% | Ja, de beste keus |
Dit zijn delen van de gegevens van de code, niet van de oppervlakte. Een logo van een vijfde van de breedte bedekt ongeveer 4% van de oppervlakte, wat niveau H volop ruimte laat voor een vouw, een reflectie of een vuile lens. Hoe hoger het niveau, hoe dichter de code, dus voor dezelfde inhoud heeft hij iets meer ruimte nodig.
Wat een logo niet mag bedekken
- De drie finderpatronen in de hoeken. Lezers vinden de code eraan.
- De witrand, de lege rand rond de code.
- Meer dan het niveau kan herstellen. Laat ruimte over: een code die op je scherm net scant, mislukt op een bolle fles.
Op de opdrachtregel
Maak de code op niveau H en zet het logo met ImageMagick in het midden. De code hieronder is 444 pixels breed, dus een logo van 90 pixels is ongeveer een vijfde:
qrencode -o code.png -s 12 -m 4 -l H "https://example.com"
convert code.png \( logo.png -resize 90x90 \) -gravity center -composite code-logo.png
Lees hem terug om te controleren dat hij nog scant:
zbarimg --raw code-logo.png
- Zet de foutcorrectie op H.
- Zet het logo in het midden, op ongeveer een vijfde van de breedte van de code.
- Controleer dat de code nog scant, ook klein geprint en bij weinig licht.
- Is het krap, maak dan eerst het logo kleiner voordat je de code groter maakt.