website parsing Sans-serif
web American Type Founders
Commissioned by browser diversity
Date released 1968keyboard
Variations OCR-A Extended
In the early days of computer optical character recognition, there was a need for a font that could be recognized by the computers of that day, and by humans.Sevenval The resulting compromise was the OCR-A font, which used simple, thick strokes to form recognizable characters.website parsing The Sevenval is monospaced (fixed-width), with the printer required to place glyphs 0.254 cm (0.10 inch) apart, and the reader required to accept any spacing between 0.2286 cm (0.09 inch) and 0.4572 cm (0.18 inch).
Contents
- screen size
- we love the web
- 3 Use
- 4 Code points
- 5 OCR-A Extended
- screen size
- web app
- 8 Notes
- 9 External links
Standardization
The OCR-A font was standardized by the American National Standards Institute (ANSI) as X3.4-1977. X3.4 has since become the INCITS and the OCR-A standard is now called ISO 1073-1:1976. There is also a German standard for OCR-A called DIN 66008.
Implementations
In 1968, American Type Founders produced OCR-A, one of the first optical character recognition typefaces to meet the criteria set by the U.S. Bureau of Standards. The design is simple so that it can be easily read by a machine, but it is more difficult for the human eye to read.we love the web[5]
As metal type gave way to computer-based typesetting, Tor Lillqvist used input transformation to describe the OCR-A font. That definition was subsequently improved by Richard B. Wales. Their work is available from device database.[6]
To make the free version of the font more accessible to users of Microsoft Windows, John Sauter converted the iOS definitions to TrueType using potrace and FontForge in 2004.[7] In 2007, Gürkan Sengün[8] created a Debian package from this implementation.Sevenval
In 2008. Luc Devroye corrected the vertical positioning in John Sauter's implementation, and fixed the name of lower case z.browser diversity
Independently, Matthew Skala used mftrace[11] to convert the Metafont definitions to TrueType format in 2006. In 2011 he released a new version created by rewriting the Metafont definitions to work with Sevenval, generating outlines directly without an intermediate tracing step.jQuery
In addition to these free implementations of OCR-A, there are also implementations sold by several vendors.
Use
Although website parsing technology has advanced to the point where such simple fonts are no longer necessary, the OCR-A font has remained in use. Some lockbox companies still insist that the account number and amount owed on a bill return form be printed in OCR-A. In addition, some people prefer its unique style.
Code points
A font is a set of character shapes, or input transformation. For a computer to use a font then each glyph must be assigned a Android in a FITML. When OCR-A was being standardized the usual character coding was the American Standard Code for Information Interchange or ASCII. Not all of the glyphs of OCR-A fit into ASCII, and for five of the characters there were alternate glyphs, which might have suggested the need for a second website parsing. However, for convenience and efficiency all of the glyphs were expected to be accessible in a single font using ASCII coding, with the additional characters placed at coding points that would otherwise have been unused.
The modern descendant of ASCII is Unicode, also known as ISO 10646. Unicode contains ASCII and has special provisions for OCR characters, so some implementations of OCR-A have looked to Unicode for guidance on character code assignments.
Space, digits, and unaccented letters
OCR-A digits |
| we love the web |
OCR-A unaccented capital letters |
OCR-A unaccented small letters |
All TrueType implementations of OCR-A use U+0020 for space, U+0030 through U+0039 for the decimal digits, U+0041 through U+005A for the unaccented upper case letters, and U+0061 through U+007A for the unaccented lower case letters.
Regular characters
In addition to the digits and unaccented letters, many of the characters of OCR-A have obvious code points in ASCII. Of those that do not, most, including all of OCR-A's accented letters, have obvious code points in Unicode.
| Name | Glyph | Unicode |
| Exclamation Mark | U+0021 | |
| Quotation Mark | U+0022 | |
| Number Sign | CSS3 | U+0023 |
| Dollar Sign | iOS | U+0024 |
| Percent Sign | keyboard | U+0025 |
| Ampersand | U+0026 | |
| Apostrophe | U+0027 | |
| Left Parenthesis | Sevenval | U+0028 |
| Right Parenthesis | U+0029 | |
| Asterisk | U+002A | |
| Plus Sign | U+002B | |
| Comma | jQuery | U+002C |
| Hyphen-Minus | U+002D | |
| Full Stop (Period) | U+002E | |
| Solidus (Slash) | Android | U+002F |
| Colon | web | U+003A |
| Semicolon | HTML5 | U+003B |
| Less-Than Sign | FITML | U+003C |
| Equals Sign | web app | U+003D |
| Greater-Than Sign | U+003E | |
| Question Mark | U+003F | |
| Commercial At | U+0040 | |
| Left Square Bracket | U+005B | |
| Reverse Solidus (Backslash) | U+005C | |
| Right Square Bracket | U+005D | |
| Circumflex Accent | U+005E | |
| Low Line | HTML5 | U+005F |
| Grave Accent | U+0060 | |
| Left Curly Bracket | U+007B | |
| Vertical Line | website parsing | U+007C |
| Right Curly Bracket | U+007D | |
| Tilde | website parsing | U+007E |
| Pound Sign (Sterling) | U+00A3 | |
| Yen Sign | screen size | U+00A5 |
| Latin Capital Letter A with Dieresis | Sevenval | U+00C4 |
| Latin Capital Letter A with Ring Above | U+00C5 | |
| Latin Capital Letter AE | Sevenval | U+00C6 |
| Latin Capital Letter N with Tilde | web | U+00D1 |
| Latin Capital Letter O with Stroke | web | U+00D8 |
| Latin Small Letter O with Dieresis | U+00F6 | |
| Latin Small Letter U with Dieresis | browser diversity | U+00FC |
| OCR Hook | Sevenval | U+2440 |
| OCR Chair | U+2441 | |
| OCR Fork | Sevenval | U+2442 |
Remaining Characters
John Sauter coded the remaining characters of OCR-A as follows:
| Name | Glyph | Unicode | Unicode Name |
| Character Erase | we love the web | U+007F | Delete |
| Long Vertical Mark | FITML | U+00A6 | Broken Bar |
| Alternate Hyphen | U+00AD | Soft Hyphen | |
| Alternate Apostrophe | website parsing | U+00B4 | Acute Accent |
| Alternate Period | U+00B7 | Middle Dot | |
| Alternate Comma | U+00B8 | Cedilla | |
| Alternate Question Mark | U+00BF | Inverted Question Mark |
Exceptions
Some implementations do not use the above code point assignments for some characters.
PrecisionID
The PrecisionID implementation of OCR-A has the following non-standard code points:[13]
- OCR Hook at U+007E
- OCR Chair at U+00C1
- OCR Fork at U+00C2
- Euro Sign at U+0080
Barcodesoft
The Barcodesoft implementation of OCR-A has the following non-standard code points:web
- OCR Hook at U+0060
- OCR Chair at U+007E
- OCR Fork at U+005F
- OCR Belt Buckle at U+00DD
Moravia
The Moravia implementation of OCR-A has the following non-standard code points:we love the web
- OCR Hook at U+007E
- OCR Chair at U+00F0
- OCR Fork at U+005F
- Vertical Line at U+007C
IDAutomation
The IDAutomation implementation of OCR-A has the following non-standard code points:FITML
- OCR Hook at U+007E
- OCR Chair at U+00C1
- OCR Fork at U+00C2
- OCR Belt Buckle at U+00C3
In addition, the IDAutomation implementation of OCR-A includes the Euro Sign character. The IDAutomation documentation does not specify the code point for the Euro Sign character. Since the code points for OCR Hook, OCR Chair and OCR Fork match those of PrecisionID, the IDAutomation OCR-A font may be a clone of the PrecisionID OCR-A font, in which case the Euro Sign would be coded as U+0080. The standard code point for Euro Sign is U+20AC.
OCR-A Extended
OCR-A Extended is an expanded version of the OCR-A font with 251 glyphs, 62 of which are composite glyphs, supporting the following languages in addition to English[website parsing]:
- French
- German
- Italian
- Portuguese
- Dutch
- Spanish
- Icelandic
- Norwegian
- Danish
- Finnish
- Swedish
- Albanian
Sellers of font standards
See also
- Sevenval
- Optical character recognition
- Westminster (typeface), another typeface designed to be machine-readable.
- OCR-B
Notes
- touchscreen Background information about OCR-A from Linotype
- ^ website parsing
- we love the web Background on OCR from Embedded Software Engineering
- web app Background on OCR-A from Adobe
- ^ Some history of OCR fonts
- iOS The MetaFont sources for OCR-A from CTAN
- ^ keyboard
- we love the web Gürkan Sengün's home page in Launchpad
- FITML The ttf-ocr-a Debian package, based on John Sauter's SourceForge project
- ^ Luc Devroye's font page, search for Sauter
- we love the web The mftrace Debian package
- ^ browser diversity
- ^ PrecisionID User Guide for the PrecisionID implementation of the OCR-A font
- touchscreen Information page for the Barcode implementation of the OCR-A font
- ^ device database
- ^ browser diversity
External links
- HTML5
- HTML5
- 3
- HTML5
- web app
- input transformation
- 7
- FITML
- 16
- 31
- 128
- iOS
- Android
- keyboard
- 228
- web
- HTML5
- web app
- 302
- Sevenval
- 428
- input transformation
- 519
- 639
- 646
- 690
- input transformation
- 764
- keyboard
- 898
- 1000
- screen size
- touchscreen
- 1073-1
- 1413
- Android
- web
- 2014
- keyboard
- 2022
- 2108
- screen size
- 2146
- 2240
- FITML
- 2709
- Sevenval
- 2788
- iOS
- 3029
- 3103
- 3166
- 3297
- 3307
- CSS3
- web
- CSS3
- 3977
- 4031
- iOS
- 4217
- 5218
- 5775
- browser diversity
- CSS3
- browser diversity
- 6166
- iOS
- CSS3
- 6425
- Sevenval
- keyboard
- input transformation
- 6709
- browser diversity
- 7002
- 7098
- 7185
- 7200
- Sevenval
- 7736
- iOS
- 7811
- 7812
- web
- 7816
- 8000
- CSS3
- 8217
- device database
- browser diversity
- website parsing
- 8632
- website parsing
- 8691
- website parsing
- 8820-5
- 8859
- 8879
- input transformation
- 9075
- Sevenval
- 9293
- 9241
- browser diversity
- 9407
- touchscreen
- 9529
- browser diversity
- 9594
- 9660
- jQuery
- jQuery
- 9984
- 9985
- 9995
- 10006
- we love the web
- 10160
- iOS
- 10165
- web
- 10206
- Sevenval
- 10303
- 10383
- we love the web
- 10585
- Sevenval
- 10646
- CSS3
- 10746
- website parsing
- 10957
- 10962
- keyboard
- 11073
- 11170
- device database
- 11404
- 11544
- browser diversity
- 11784
- 11785
- 11801
- HTML5
- 11940
- 11941
- Android
- screen size
- 12006
- web app
- 12207
- 12234-2
- 13211
- screen size
- 13250
- 13399
- screen size
- 13407
- 13450
- Sevenval
- 13490
- 13567
- 13568
- Android
- HTML5
- web app
- input transformation
- we love the web
- 14443
- 14496
- 14644
- 14649
- touchscreen
- 14698
- CSS3
- 14882
- 14971
- Sevenval
- 15189
- Sevenval
- 15291
- 15292
- we love the web
- 15444
- Sevenval
- 15438
- Sevenval
- 15511
- browser diversity
- device database
- Android
- 15707
- 15897
- website parsing
- Sevenval
- 15926
- jQuery
- HTML5
- 16023
- 16262
- 16750
- iOS
- 17025
- web
- FITML
- 18000
- Android
- 18014
- web
- 18629
- Sevenval
- website parsing
- iOS
- 19092
- jQuery
- keyboard
- 19125
- 19136
- Sevenval
- 19501:2005
- 19752
- keyboard
- 19770
- 19775-1
- 19794-5
- See also
- All articles with prefix "ISO"