the present invention provides a method and apparatus for reading bar codes having variable orientations on a substantially motionless medium . a portion of the surface of the medium having a bar code in a variable orientation is scanned using a light source and a photodetector receives the beam reflected from the surface and generates signals corresponding to the scanning lines . the signal corresponds to the scanning lines and has amplitude peaks corresponding to the intersection of the bars by the light beam . the amplitude peaks and position of the peaks on the scanning lines are recorded . the sum of the amplitude peaks is formed in the positions of the bars and deduced from the sums of the peaks amplitudes .