Leggere codici a barre e QR da schermo: perché il laser non ci riesce e come leggerli bene
Per leggere codici da smartphone o monitor serve un imager 2D, non un lettore laser: il laser misura la luce riflessa dal suo punto, ma uno schermo emette luce propria e riflette poco, quindi il laser non vede le barre. Con un imager, porta la luminosità dello schermo al massimo, togli i riflessi inclinando leggermente il telefono e, se il lettore lo prevede, attiva la modalità di lettura da schermo.
Perché il laser non legge gli schermi
Un lettore laser illumina il codice con un punto di luce rossa e misura quanta ne torna indietro. Sulla carta, il bianco riflette molto e il nero poco. Su uno schermo LCD o OLED la situazione cambia:
- i pixel "bianchi" non riflettono la luce del laser, la emettono con la propria retroilluminazione, e il lettore non è progettato per misurarla;
- il vetro di protezione produce un riflesso speculare che rimanda il laser nella stessa direzione in modo uniforme, cancellando la differenza tra barre e spazi;
- molti schermi LCD hanno filtri polarizzatori che attenuano ulteriormente la luce riflessa.
Il risultato pratico: con un laser alcuni codici da schermo si leggono a volte, la maggior parte mai. Non esistono impostazioni che risolvano. Gli schermi a inchiostro elettronico (e-ink) sono un'eccezione, perché riflettono la luce come la carta.
Quale lettore serve
| Tecnologia | Codici 1D da schermo | QR e codici 2D da schermo |
|---|---|---|
| Laser | Quasi mai | No |
| Linear imager (CCD) | Alcuni modelli sì, dichiarato nella scheda tecnica | No |
| Imager 2D | Sì | Sì |
| Fotocamera di smartphone o tablet | Sì, con app adatta | Sì |
Se acquisti per leggere biglietti, coupon, carte fedeltà digitali o QR di pagamento, scegli un imager 2D e verifica nella scheda tecnica la lettura da display ("reads from mobile phone screens" o simile). Vedi anche laser, CCD o imager 2D e i casi d'uso in eventi e biglietti.
Soluzione rapida con un imager 2D
- Luminosità al massimo. Chiedi di alzare la luminosità del telefono e di disattivare la luminosità automatica. Molte app di biglietti lo fanno da sole quando mostrano il codice.
- Codice abbastanza grande. Fai ingrandire il codice o ruotare il telefono in orizzontale se il codice è lungo. Un codice minuscolo sullo schermo ha moduli formati da pochi pixel.
- Inclina leggermente. Tieni il telefono inclinato di qualche grado rispetto al lettore per evitare che il riflesso dell'illuminazione del lettore finisca sul codice.
- Varia la distanza. Parti a qualche centimetro e allontana piano. Sui lettori da banco appoggia il telefono sulla zona indicata e sollevalo leggermente.
- Attiva la modalità schermo, se esiste. Molti imager hanno un'impostazione per la lettura da display, che regola l'illuminazione e l'esposizione. Il nome cambia per produttore: cercala nel manuale.
Problemi tipici dello schermo e rimedi
| Problema | Effetto | Rimedio |
|---|---|---|
| Pellicola protettiva opaca o graffiata | Diffonde la luce, sfoca i moduli | Ingrandisci il codice; se non basta, la pellicola va tolta |
| Vetro rotto sul codice | Le crepe sembrano barre | Sposta il codice in un'altra zona dello schermo |
| Modalità scura dell'app | Codice chiaro su fondo scuro (invertito) | Disattiva la modalità scura o abilita la lettura dei codici invertiti |
| Filtro luce blu o modalità lettura | Contrasto ridotto, sfondo giallastro | Disattiva il filtro mentre mostri il codice |
| Screenshot ridimensionato o inviato in chat | Compressione, bordi sfumati, moduli irregolari | Usa il codice originale nell'app o nel PDF |
| Monitor a bassa risoluzione o con frequenza bassa | Effetto moiré o sfarfallio | Ingrandisci il codice, prova un'altra distanza |
I codici in modalità invertita (chiari su fondo scuro) sono validi per QR e Data Matrix, ma molti lettori li ignorano finché non abiliti l'opzione "inverse" o "invertiti" per quella simbologia.
Codici dal monitor del PC
Leggere un codice da un monitor fisso è simile al telefono, con due differenze: il monitor non è inclinabile facilmente e la sua superficie può essere lucida o opaca. Gli schermi opachi riflettono meno ma diffondono di più: ingrandisci il codice nel visualizzatore. Se devi leggere spesso codici dal PC (per esempio per testare etichette), è più semplice usare il generatore di QR code o il generatore di codici a barre e stamparli, oppure decodificarli direttamente con il lettore online con fotocamera.
Se sei tu a creare il codice da mostrare
- Mostra il codice su fondo bianco puro con moduli neri, senza logo sovrapposto se puoi evitarlo.
- Lascia una zona di rispetto ampia: almeno 4 moduli per il QR, come previsto dalla specifica. Vedi zona di rispetto.
- Per contenuti brevi preferisci un QR con pochi dati: moduli più grandi a parità di area.
- Evita animazioni e riflessi decorativi sopra il codice.
Caso tipico: all'ingresso di un evento i biglietti stampati entrano senza problemi, quelli sul telefono no. Il lettore è un laser 1D usato per anni con biglietti cartacei. Con un imager 2D da banco e la richiesta di alzare la luminosità, la coda si smaltisce.
Domande frequenti
Un lettore laser può leggere da schermo se aumento la luminosità?
A volte un codice 1D grande si legge, ma in modo inaffidabile. Per un uso regolare non è una soluzione: serve un imager.
Perché il lettore legge il QR dal telefono di alcuni clienti e da altri no?
Luminosità, pellicole, modalità scura e dimensione del codice cambiano da telefono a telefono. Prova la luminosità massima e l'ingrandimento prima di sospettare il lettore.
Gli e-reader con inchiostro elettronico si leggono?
Sì, di solito come la carta, perché lo schermo riflette la luce invece di emetterla. Il contrasto è però inferiore a una buona stampa.