OCR-A es una fuente creada en 1968, en los primeros días del reconocimiento óptico de caracteres por computadora , cuando existía la necesidad de una fuente que pudiera ser reconocida no solo por las computadoras de ese día, sino también por los humanos. [2] OCR-A utiliza trazos simples y gruesos para formar caracteres reconocibles. [3] La fuente es monoespaciada (ancho fijo), con la impresora requerida para colocar glifos0,254 cm (0.10 pulgadas) aparte, y el lector debe aceptar cualquier espacio entre0,2286 cm (0,09 pulgadas) y0,4572 cm (0,18 pulgadas).
Categoría | Sans-serif |
---|---|
Diseñador (s) | Fundadores de tipo americano |
Encargado por | Instituto Americano de Estándares Nacionales |
Fecha de publicación | 1968 [1] |
Variaciones | OCR-A extendido |
Muestra |
Estandarización
La fuente OCR-A fue estandarizada por el American National Standards Institute (ANSI) como ANSI X3.17-1981. Desde entonces, X3.4 se ha convertido en INCITS y el estándar OCR-A ahora se llama ISO 1073-1: 1976 . También existe un estándar alemán para OCR-A llamado DIN 66008. [4]
Implementaciones
En 1968, American Type Founders produjo OCR-A, uno de los primeros tipos de letra de reconocimiento óptico de caracteres que cumple con los criterios establecidos por la Oficina de Normas de EE. UU. El diseño es simple para que una máquina pueda leerlo fácilmente, pero es más difícil de leer para el ojo humano. [5]
Cuando la tipografía metálica dio paso a la composición tipográfica basada en computadora, Tor Lillqvist usó Metafont para describir la fuente OCR-A. [ cuando? ] Esa definición fue posteriormente mejorada por Richard B. Wales. Su trabajo está disponible en CTAN . [6]
Para hacer que la versión gratuita de la fuente sea más accesible para los usuarios de Microsoft Windows, John Sauter convirtió las definiciones de Metafont a TrueType usando potrace y FontForge en 2004. [7] En 2007, Gürkan Sengün creó un paquete Debian a partir de esta implementación. [8] En 2008, Luc Devroye corrigió el posicionamiento vertical en la implementación de John Sauter y corrigió el nombre de la z minúscula. [9]
Independientemente, Matthew Skala [10] usó mftrace [11] para convertir las definiciones de Metafont a formato TrueType en 2006. En 2011 lanzó una nueva versión creada reescribiendo las definiciones de Metafont para trabajar con METATYPE1 , generando esquemas directamente sin un paso de rastreo intermedio. El 27 de septiembre de 2012, actualizó su implementación a la versión 0.2. [12]
Además de estas implementaciones gratuitas de OCR-A, también hay implementaciones vendidas por varios proveedores.
Usar
Aunque la tecnología de reconocimiento óptico de caracteres ha avanzado hasta el punto en que ya no son necesarias fuentes tan simples, la fuente OCR-A se ha mantenido en uso. Su uso sigue estando muy extendido en la codificación de cheques en todo el mundo. Algunas compañías de cajas de seguridad todavía insisten en que el número de cuenta y el monto adeudado en un formulario de devolución de facturas se impriman en OCR-A. [13] Además, debido a su aspecto inusual, a veces se utiliza en publicidad y gráficos de visualización.
En particular, se utiliza para los subtítulos en películas y series de televisión como Blacklist y para los títulos principales de The Pretender . Además, OCR-A se utiliza para la película 13 horas: los soldados secretos de Bengasi .
Puntos de código
Una fuente es un conjunto de formas de caracteres o glifos . Para que una computadora use una fuente, a cada glifo se le debe asignar un punto de código en un conjunto de caracteres . Cuando se estandarizó OCR-A, la codificación de caracteres habitual era el Código estándar estadounidense para el intercambio de información o ASCII. No todos los glifos de OCR-A encajan en ASCII, y para cinco de los caracteres había glifos alternativos, lo que podría haber sugerido la necesidad de una segunda fuente. Sin embargo, por conveniencia y eficiencia, se esperaba que todos los glifos fueran accesibles en una sola fuente utilizando codificación ASCII, con los caracteres adicionales colocados en puntos de codificación que de otro modo no se habrían utilizado.
El descendiente moderno de ASCII es Unicode , también conocido como ISO 10646 . Unicode contiene ASCII y tiene disposiciones especiales para los caracteres OCR, por lo que algunas implementaciones de OCR-A han recurrido a Unicode para obtener orientación sobre las asignaciones de códigos de caracteres.
Representación estándar pre-Unicode
La ISO estándar ISO 2033 : 1983, y el correspondiente Japanese Industrial Standard JIS X 9010: 1984 (originalmente JIS C 6229-1984), definen la codificación de caracteres para OCR-A, OCR-B y E-13B . Para OCR-A, que definen un conjunto ASCII de 7 bits modificada (también conocido por su ISO-IR número ISO-IR-91) que incluye sólo letras mayúsculas, dígitos, un subconjunto de la puntuacion y símbolos, y algunos símbolos adicionales. [14] Los códigos que se redefinen en relación con ASCII, en lugar de simplemente omitidos, se enumeran a continuación:
Personaje | Imagen | Localización | En ASCII | Comentarios |
---|---|---|---|---|
£ | 0x23 | # | Coincide con BS 4730, la variante del Reino Unido de ISO 646 . [15] | |
{ | 0x28 | ( | El nombre del personaje sigue siendo "PARENTESIS IZQUIERDA", a pesar de mostrar una llave. Se omite el código ASCII de llave izquierda habitual 0x7B. [14] | |
} | 0x29 | ) | El nombre del personaje sigue siendo "PARENTESIS DERECHA", a pesar de mostrar una llave. Se omite el código ASCII de llave derecha habitual 0x7D. [14] | |
⑀ | 0x3C | < | ||
⑁ | 0x3E | > | ||
¥ | 0x5C | \ | Coincide con JIS X 0201 . Incluido en JIS X 9010, pero omitido por ISO 2033. [14] | |
⑂ | 0x5D | ] |
Además, la marca vertical larga () está codificado en 0x7C, correspondiente a la barra vertical ASCII (|). [14]
Caracteres dedicados OCR-A en Unicode
Los siguientes caracteres se han definido con fines de control y ahora se encuentran en el rango Unicode "Reconocimiento óptico de caracteres" 2440–245F :
Nombre | Imagen | Texto | Unicode |
---|---|---|---|
Gancho OCR | ⑀ | U + 2440 | |
Silla OCR | ⑁ | U + 2441 | |
Horquilla OCR | ⑂ | U + 2442 | |
Horquilla invertida OCR | ⑃ | ⑃ | U + 2443 |
Hebilla de cinturón OCR | ⑄ | ⑄ | U + 2444 |
Pajarita OCR | ⑅ | ⑅ | U + 2445 |
Espacio, dígitos y letras sin acentos
Todas las implementaciones de OCR-A usan U + 0020 para el espacio, U + 0030 a U + 0039 para los dígitos decimales, U + 0041 a U + 005A para las letras mayúsculas sin acento y U + 0061 a U + 007A para los sin acento. letras minusculas.
Caracteres regulares
Además de los dígitos y las letras sin acento, muchos de los caracteres de OCR-A tienen puntos de código obvios en ASCII. De los que no lo tienen, la mayoría, incluidas todas las letras acentuadas de OCR-A, tienen puntos de código obvios en Unicode.
Nombre | Glifo | Unicode |
---|---|---|
Signo de exclamación | U + 0021 | |
Comillas | U + 0022 | |
Símbolo de número | U + 0023 | |
Signo de dólar | U + 0024 | |
Signo de porcentaje | U + 0025 | |
Ampersand | U + 0026 | |
Apóstrofe | U + 0027 | |
Paréntesis izquierdo | U + 0028 | |
Paréntesis derecho | U + 0029 | |
Asterisco | U + 002A | |
Signo de más | U + 002B | |
Coma | U + 002C | |
Guión menos | U + 002D | |
Punto final (período) | U + 002E | |
Solidus (barra) | U + 002F | |
Colon | U + 003A | |
Punto y coma | U + 003B | |
Signo menor que | U + 003C | |
Signo de igual | U + 003D | |
Signo mayor que | U + 003E | |
Signo de interrogación | U + 003F | |
Comercial en | U + 0040 | |
Soporte cuadrado izquierdo | U + 005B | |
Solidus inverso (barra invertida) | U + 005C | |
Soporte cuadrado derecho | U + 005D | |
Acento circunflejo | U + 005E | |
Soporte rizado izquierdo | U + 007B | |
Soporte rizado derecho | U + 007D | |
Signo de libra (esterlina) | U + 00A3 | |
Signo de yen | U + 00A5 | |
Letra latina mayúscula A con diéresis | U + 00C4 | |
Mayúscula latina A con anillo arriba | U + 00C5 | |
Letra latina mayúscula AE | U + 00C6 | |
Letra latina mayúscula N con tilde | U + 00D1 | |
Letra latina mayúscula O con diéresis | U + 00D6 | |
Mayúscula latina O con trazo | U + 00D8 | |
Letra latina mayúscula U con diéresis | U + 00DC |
Personajes restantes
Linotype [17] codificó los caracteres restantes de OCR-A de la siguiente manera:
Nombre | Glifo | Unicode | Nombre Unicode |
---|---|---|---|
Marca vertical larga | U + 007C | Linea vertical |
Personajes adicionales
Las fuentes que descienden del trabajo de Tor Lillqvist y Richard B. Wales definen cuatro caracteres que no están en OCR-A para completar el conjunto de caracteres ASCII. Estas formas utilizan el mismo estilo que las formas de caracteres OCR-A. Ellos son:
Nombre | Glifo | Unicode |
---|---|---|
Línea baja | U + 005F | |
Acento grave | U + 0060 | |
Linea vertical | U + 007C | |
Tilde | U + 007E |
Linotype también define caracteres adicionales. [18]
Excepciones
Algunas implementaciones no utilizan las asignaciones de puntos de código anteriores para algunos caracteres.
PrecisionID
La implementación de PrecisionID de OCR-A tiene los siguientes puntos de código no estándar: [19]
- Gancho OCR en U + 007E
- Cátedra OCR en U + 00C1
- Bifurcación OCR en U + 00C2
- Signo de euro en U + 0080
Barcodesoft
La implementación de Barcodesoft de OCR-A tiene los siguientes puntos de código no estándar: [20] [21]
- Gancho OCR en U + 0060
- Cátedra OCR en U + 007E
- Horquilla OCR en U + 005F
- Marca vertical larga en U + 007C (coincide con Linotype)
- Borrado de caracteres en U + 0008
Morovia
La implementación de Morovia de OCR-A tiene los siguientes puntos de código no estándar: [22]
- Gancho de OCR en U + 007E (coincide con PrecisionID)
- Cátedra OCR en U + 00F0
- Bifurcación de OCR en U + 005F (de acuerdo con Barcodesoft)
- Marca vertical larga en U + 007C (coincide con Linotype)
IDAutomation
La implementación IDAutomation de OCR-A tiene los siguientes puntos de código no estándar: [23]
- Gancho de OCR en U + 007E (coincide con PrecisionID)
- Presidente de OCR en U + 00C1 (coincide con PrecisionID)
- Horquilla OCR en U + 00C2 (coincide con PrecisionID)
- Hebilla de cinturón OCR en U + 00C3
Vendedores de estándares de fuentes
- Copia impresa de ISO 1073-1: 1976, distribuida a través de ANSI, de Amazon.com
- ISO 1073-1 también está disponible en Techstreet, que distribuye estándares para ANSI e ISO
Ver también
- Reconocimiento de caracteres de tinta magnética
- Reconocimiento óptico de caracteres
- Westminster (tipo de letra) , un tipo de letra diseñado para parecerse a la apariencia visual de MICR.
- OCR-B
Notas
- ^ Antecedentes de la fuente OCR-A de Adobe
- ^ Motivación para OCR-A de Microscan
- ^ "Antecedentes de OCR de ingeniería de software embebido" . Archivado desde el original el 17 de septiembre de 2016 . Consultado el 1 de septiembre de 2012 .
- ^ DIN 66008-1 Fuente A para reconocimiento óptico de caracteres; Caracteres y dimensiones nominales
- ^ Antecedentes sobre OCR-A de Adobe
- ^ Las fuentes de MetaFont para OCR-A de CTAN
- ^ Fuente OCR-A 2004 de John Sauter de esas fuentes de MetaFont
- ^ El paquete de Debian fonts-ocr-a, basado en el proyecto SourceForge de John Sauter
- ^ Cuenta de Luc Devroye sobre sus cambios en la implementación de OCR-A de John Sauter
- ^ Página de inicio de Matthew Skala
- ^ El paquete mftrace Debian
- ^ Fuente OCR-A 2012 de Matthew Skala de las fuentes de MetaFont
- ^ Descripción de un servicio de caja de seguridad, tenga en cuenta "La factura contiene una factura y un estado de cuenta con la información del paciente contenida en una línea de reconocimiento óptico de caracteres (OCR) escaneable. La línea de OCR es similar en apariencia a la que se encuentra en un estado de cuenta de tarjeta de crédito o factura telefónica . "
- ^ a b c d e ISO / TC97 / SC2 (1 de agosto de 1985). Juego de caracteres gráficos japoneses OCR-A (PDF) . ITSCJ / IPSJ . ISO-IR -91.
- ^ BSI (1 de diciembre de 1975). El conjunto de caracteres gráficos del código de datos de 7 bits del Reino Unido (PDF) . ITSCJ / IPSJ . ISO-IR -4.
- ^ https://www.unicode.org/charts/PDF/U2440.pdf
- ^ Fuente OCR-A de Linotype: elija Mapa de caracteres para ver los caracteres y su codificación
- ^ Fuente extendida OCR-A de Linotype: elija Mapa de caracteres y luego Mostrar todo
- ^ Guía del usuario de PrecisionID para la implementación de PrecisionID de la fuente OCR-A
- ^ Página de información para la implementación del código de barras de la fuente OCR-A
- ^ Otra fuente de información sobre las fuentes de código de barras
- ^ Página de información para la implementación de Morovia de la fuente OCR-A
- ^ Página de información para la implementación IDAutomation de las fuentes OCR-A y OCR-B
enlaces externos
- Artículo introductorio sobre fuentes OCR
- Enlace estándar ANSI INCITS 17-1981 (R2002)
- Antecedentes sobre el trabajo de ISO que involucra OCR-A
- Gráficos de código Unicode
- Mapeo de IBM GCGID