Error Correction Level Boosting¶
If the user does not provide any
version keyword parameter for
Segno uses the minimal possible (Micro) QR Code symbol with a maximal error
correction level. The QR Code version dominates, meaning that Segno will never
choose a better error correction level if this choice requires a higher (Micro)
QR Code version.
It’s recommended to keep the default error level correction boosting, because a better error correction improves the possibility that the QR Code can be read by average QR Code decoders under all circumstances.
Keeping the default (boost error level on):
>>> import segno >>> qr = segno.make('The Long and Winding Road') >>> qr.designator '2-M'
Segno returns a 2-M QR Code (version 2, error correction level “M”).
If the user does not allow any enhancement of the error correction level, Segno returns a 2-L QR Code (version 2, error correction level “L”) which does not optimally exploit the possible error corrections:
>>> import segno >>> qr = segno.make('The Long and Winding Road', boost_error=False) >>> qr.designator '2-L'
As shown, both QR codes use the same version (and are therefore have the same size). However, the first QR code uses a better error correction level (15% vs. 7%) and should be easier to read.