There are 4 possible scenarios which can occur when reading linear 1D:
Barcode type is known and is horizontal
Barcode type is known and is not horizontal (skewed)
Barcode type is unknown and is horizontal
Barcode type is unknown and is not horizontal (skewed)
For maximum performance efficiency, developers should perform the steps which closest relate to their particular case. When the details of the barcode are not known, or if efficiency is not an issue, developers can always use the AutomaticReadSkewedBarCode method. This method can read any supported linear 1D barcode, regardless of skewing.