: Font for Access Key Code I'm working on a project that will mail out access codes. Yes, using physical snail mail. The recipient needs to be able read the code and accurately type it into
I'm working on a project that will mail out access codes. Yes, using physical snail mail. The recipient needs to be able read the code and accurately type it into a web form. The codes consist of seven characters including upper case A-Z, lower case a-z, and digits 0-9.
My question is how to communicate exact characters, keeping in mind that I might have a number 0 immediately next to the letter O. A code may also contain one, but not the other. I'm also concerned about i vs I vs l vs 1... and those are four different valid characters.
What fonts can I use that will clearly distinguish these? What are tests I can use to check the font? Are there other sets of similar character glyphs I might be missing? Is there anything else that I can/should be doing to make sure these are readable in an accurate way?
More posts by @Lengel450
4 Comments
Sorted by latest first Latest Oldest Best
OCR-B was designed for a similar purpose. All characters are easy to distinguish both by the human eye and for optical character recognition.
OCR-B replaced a previous font called OCR-A which exaggerated even more the differences between similar letters, at the expense of making it less pleasant for humans to read. You might have seen these on bank documents, cheques, pay slips etc:
Think about base-32 encoding
But you should also think of it in another way - why not encode your access code using Base 32 (crockford version) encoding? This is an encoding which excludes the letters I, L, and O to avoid confusion with numbers, and also excludes the letter U to prevent accidental obscenity in English. Then you can use just about any font.
Can't go wrong with Andale Mono.
Andale Mono
Changed my answer from Courier to Andale Mono
Search for programming fonts.
Character differentiation can be crucial when programming; these are fonts that are designed specifically with this sort of thing in mind.
Consolas is a very popular choice. Here's what those characters look like:
Here's a huge thread on programming fonts over at Stack Overflow: Recommended Fonts for Programming?
I don't want to change your criteria, but have you considered only distributing key codes that omit ambiguous characters? This is not an uncommon practice. For example, in the US all vehicles are required to have a VIN. As a measure of error prevention, they follow this rule:
does not include the letters I (i), O (o), or Q (q) (to avoid confusion with numerals 1 and 0)[1]
When the user inputs they key code, you could check for any of the invalid characters and have some sort of pop-up with a message like "Oops! You entered an I. Are you sure that's not a 1?"
A simple test is to go to MyFonts.com and type in a string for the sample text of all the similar characters and start looking.
For zeros, look for a font with a slashed-zero. The I/l/1 issue is a bit trickier, though.
Terms of Use Create Support ticket Your support tickets Stock Market News! © vmapp.org2024 All Rights reserved.