CMOS (Complementary Metal-Oxide-Semiconductor) scanners are capable of scanning both 1D (linear barcodes) and 2D (linear and horizontal barcodes) codes and provide high accuracy and flexibility. CMOS scanners are suitable for applications where different types of codes need to be read on different surfaces and materials, including paper labels and electronic displays.