Advice on encoding for xy plotter

I would like to provide some encoding to verify the position of my stepper motor carriages and not rely on step counting which can be less accurate. Printers have a strip with stripes on which are read using an optical switch. Mice on the other hand have a rotating spoke system again breaks a beam. Either system could be used to generate impulses to digital inputs which could be counted to provide an actual measurement of the xy coordinates.

In addition, I intend fit two limit micro switches to prevent overrun which can be incorporated into both the motor supplies and as digital inputs for an alarm.

Has anyone used the any type encoding on this type of application?

Thanks