1D 2D code reader