OCR-A

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

OCR-A는 미국 국립 표준 협회(ANSI)에서 표준화된 광학 문자 인식 글꼴이다. 초기에는 기계 판독에 최적화되었으나, 이후 다양한 구현과 유니코드 지원을 통해 사용되고 있다. OCR-A는 수표 인코딩, 광고, 영화 자막 등에 활용되며, 독특한 외관으로 인해 시각적인 효과를 주기도 한다.

OCR-A
개요

이미지 준비중입니다.

OCR-A 글꼴
스타일산세리프
출시일1968년
창작자아메리칸 타입 파운더스
의뢰 기관미국 국가 표준 협회
변형OCR-A 확장
상세 정보
최초 개발1961년 (숫자 글꼴)
알파뉴메릭 글꼴 출시1966년 (57자, 대문자)
표준 개정1981년 (ANSI X3.17-1981)
표준 준수미국 국가 표준 협회 (ANSI), 독일 DIN 66008
대체 버전표준 ISO-Adobe 문자 세트 포함
📚 더 읽어볼만한 페이지
  • 광학 문자 인식 - 자동 번호판 인식
  • 광학 문자 인식 - 광학 마크 인식
    광학 마크 인식(OMR)은 광학적으로 마크 유무를 감지하여 데이터를 입력하는 기술로, 시험 채점, 설문 조사 등에 활용되며 OMR 소프트웨어 발전을 통해 데이터 처리가 빨라지고 정확해지고 있다.
  • 고정폭 글꼴 - OCR-B
    OCR-B는 1960년대 ECMA에서 개발되어 ISO 1073-2로 채택된 광학 문자 인식 관련 표준 글꼴이며, 다양한 디지털 환경에서 사용되고 퍼블릭 도메인 버전도 존재한다.
  • 고정폭 글꼴 - 로보토
    로보토는 크리스찬 로버트슨이 디자인한 구글의 산세리프 글꼴로, 2013년부터 안드로이드 운영체제 및 여러 구글 서비스에서 기본 시스템 글꼴로 사용되고 있으며, 네오 그로테스크 양식에 속해 다양한 굵기와 스타일을 제공한다.
  • 마이크로소프트 글꼴 - 맑은 고딕
    맑은 고딕은 윈도우 비스타부터 기본 한글 글꼴로 사용된 훈민정음 기반의 글꼴이며, KS X 1001의 모든 특수 문자와 한글 11172자를 지원하고 클리어타입 렌더링을 최적화했지만 백슬래시 기호 표시 문제점이 있다.
  • 마이크로소프트 글꼴 - Comic Sans
    Comic Sans는 1994년 빈센트 코나레가 개발한 폰트이며, 마이크로소프트 밥의 말풍선 글꼴 대체용으로 개발되어 윈도우 95 등에 기본 글꼴로 제공되었지만, 남용에 대한 비판을 받기도 한다.

2. 표준

OCR-A 글꼴은 미국 국립 표준 협회(ANSI)에서 ANSI X3.17-1981로 표준화했다. X3.4 이후 INCITS가 작업했으며, OCR-A 표준은 현재 ISO 1073-1:1976으로 불린다. OCR-A의 DIN 66008이라는 독일 표준도 있다.

ISO 표준 ISO 2033:1983과, 이에 상응하는 일본 산업 규격 JIS X 9010:1984 (원래 JIS C 6229-1984)는 OCR-A, OCR-B, E-13B에 대한 문자 인코딩을 정의한다. OCR-A는 대문자, 숫자, 구두점 및 기호의 하위 집합, 그리고 몇몇 추가 기호만을 포함하는 수정된 7비트 ASCII 세트(ISO-IR 번호 ISO-IR-91로도 알려져 있음)를 정의한다. ASCII를 기준으로 단순히 생략되는 것이 아니라 재정의된 코드는 다음과 같다.

👆
좌우로 밀어서 보기
문자이미지위치ASCII에서비고
£--0x23#ISO 646의 영국 변형인 BS 4730과 일치한다.
{--0x28(문자 이름은 중괄호를 표시하지만, 여전히 "LEFT PARENTHESIS"이다. 일반적인 왼쪽 중괄호 ASCII 코드 0x7B는 생략된다.
}--0x29)문자 이름은 중괄호를 표시하지만, 여전히 "RIGHT PARENTHESIS"이다. 일반적인 오른쪽 중괄호 ASCII 코드 0x7D는 생략된다.
--0x3C<
--0x3E>
¥--0x5C\JIS X 0201과 일치한다. JIS X 9010에 포함되어 있지만, ISO 2033에서는 생략되었다.
--0x5D]


또한, 긴 수직선 표시(--)는 ASCII 수직 막대(|)에 해당하는 0x7C에 인코딩된다.

3. 구현

1968년, 아메리칸 타입 파운더스(American Type Founders, ATF)는 미국 표준국(US Bureau of Standards)의 기준을 충족하는 최초의 광학 문자 인식 글꼴 중 하나인 OCR-A를 제작했다. 초기 디자인은 기계 판독에 최적화되어 사람의 가독성은 낮았다.

금속 활자에서 컴퓨터 조판 방식으로 전환되면서, Tor Lillqvist가 메타폰트(MetaFont)를 사용하여 OCR-A 글꼴을 디자인했다. Richard B. Wales가 MetaFont 정의를 개선했으며, 이들의 작업은 CTAN에서 확인할 수 있다.

John Sauter는 2004년 포트레이스(potrace)와 폰트포지(FontForge)를 사용하여 MetaFont 정의를 트루타입(TrueType)으로 변환, 무료 버전 글꼴을 사용자에게 제공했다. Gürkan Sengün은 2007년 이 구현을 기반으로 데비안(Debian) 패키지를 만들었다. 2008년, 뤽 데브로이(Luc Devroye)는 John Sauter의 구현에서 수직 위치를 수정하고 소문자 z에 대한 작업을 완료했다.

매튜 스칼라(Matthew Skala)는 mftrace를 사용하여 MetaFont 정의를 트루타입 형식으로 변환했다. 2011년, 매튜 스칼라는 Metafont 정의를 다시 작성하여 중간 버전 추적 없이 직접 윤곽선을 생성하는 새 버전을 출시, 2012년에 업데이트했다. 매튜 스칼라는 OCR-A 및 OCR-B 글꼴과 소스 모두를 퍼블릭 도메인으로 공개했다.

상용 OCR-A 글꼴도 여러 공급업체에서 판매되고 있다. 토바이어스 프레르-존스(Tobias Frere-Jones)는 1995년에 장식 활자(swashes)와 긴 s가 있는 OCR-A 재설계인 Estupido-Espezial을 만들었다. Maxitype은 OCR-A 글꼴을 기반으로 한 OCR-X 글꼴을 디자인했다.

4. 유니코드

ASCII의 현재 계열은 ISO 10646으로도 알려진 유니코드이다. 유니코드는 ASCII를 포함하고 있으며 OCR 문자에 대한 특수 규정이 있어, OCR-A의 일부 구현은 문자 코드 할당에 대한 지침으로 유니코드를 고려한다.

4.1. 유니코드의 OCR-A 전용 문자

ASCII의 현재 계열은 ISO 10646으로도 알려진 유니코드이다. 유니코드는 ASCII를 포함하고 있으며 OCR 문자에 대한 특수 규정이 있으므로 OCR-A의 일부 구현은 문자 코드 할당에 대한 지침으로 유니코드를 고려해야 한다.

다음 문자는 제어 목적으로 정의되었으며 현재 "광학 문자 인식" 유니코드 범위 2440–245F에 있다.

👆
좌우로 밀어서 보기
ASCII 및 유니코드를 기반으로 한 전용 OCR-A 코드 포인트
이름이미지텍스트유니코드
OCR 훅--U+2440
OCR 체어--U+2441
OCR 포크--U+2442
OCR 반전 포크U+2443
OCR 벨트 버클U+2444
OCR 보타이U+2445

4.2. 공백, 숫자 및 악센트 없는 문자

OCR-A의 모든 구현은 공백에 U+0020, 십진수 숫자에 U+0030부터 U+0039까지, 악센트 없는 대문자에 U+0041부터 U+005A까지, 악센트 없는 소문자에 U+0061부터 U+007A까지를 사용한다.

--
--
--

4.3. 일반 문자

숫자와 악센트가 없는 문자를 제외하고, OCR-A의 많은 문자는 ASCII에 명백한 코드 포인트를 가지고 있다. 그렇지 않은 문자 중 대부분은, OCR-A의 모든 악센트가 있는 문자를 포함하여 유니코드에 명백한 코드 포인트를 가지고 있다.

👆
좌우로 밀어서 보기
ASCII와 유니코드에 기반한 OCR-A 코드 포인트
이름글리프유니코드
느낌표--U+0021
큰따옴표--U+0022
넘버 기호--U+0023
달러 기호--U+0024
퍼센트 기호--U+0025
앰퍼샌드--U+0026
작은따옴표--U+0027
왼쪽 괄호--U+0028
오른쪽 괄호--U+0029
별표--U+002A
더하기 기호--U+002B
쉼표--U+002C
하이픈-마이너스--U+002D
마침표--U+002E
솔리두스 (슬래시)--U+002F
콜론--U+003A
세미콜론--U+003B
보다 작음 기호--U+003C
등호--U+003D
보다 큼 기호--U+003E
물음표--U+003F
골뱅이 기호--U+0040
왼쪽 대괄호--U+005B
역 슬래시--U+005C
오른쪽 대괄호--U+005D
곡절 악센트--U+005E
왼쪽 중괄호--U+007B
오른쪽 중괄호--U+007D
파운드 기호 (파운드)--U+00A3
엔 기호--U+00A5
라틴 대문자 A (분음 부호 포함)--U+00C4
라틴 대문자 A (링 첨가)--U+00C5
라틴 대문자 AE--U+00C6
라틴 대문자 N (물결표 포함)--U+00D1
라틴 대문자 O (분음 부호 포함)--U+00D6
라틴 대문자 O (가로선 포함)--U+00D8
라틴 대문자 U (분음 부호 포함)--U+00DC

4.4. 나머지 문자

ASCII의 현재 계열은 ISO 10646으로도 알려진 유니코드이다. 유니코드는 ASCII를 포함하고 있으며 OCR 문자에 대한 특수 규정이 있으므로, OCR-A의 일부 구현은 문자 코드 할당에 대한 지침으로 유니코드를 고려해야 한다. 라이노타입(Linotype)은 OCR-A의 나머지 문자에 대한 유니코드 인코딩을 정의했다. 긴 수직 막대는 U+007C (수직선)를 사용한다.

👆
좌우로 밀어서 보기
추가적인 OCR-A 문자
이름글리프유니코드유니코드 이름
긴 수직 막대--U+007C수직선

4.5. 추가 문자

Tor Lillqvist와 Richard B. Wales의 작업을 기반으로 한 글꼴은 ASCII 문자 집합을 채우기 위해 OCR-A에 없는 네 개의 문자를 정의한다. 이 모양은 OCR-A 문자 모양과 동일한 스타일을 사용한다.

👆
좌우로 밀어서 보기
추가 ASCII 문자
이름글리프유니코드
밑줄--U+005F
억음 부호--U+0060
세로선--U+007C
물결표--U+007E


린노타입(Linotype)은 또한 추가 문자를 정의한다.

4.6. 예외

일부 구현에서는 일부 문자에 대해 위 코드 포인트 지정을 사용하지 않는다.

👆
좌우로 밀어서 보기
구현비표준 코드 포인트비고
PrecisionID
바코드소프트(Barcodesoft)
Morovia
IDAutomation

5. 활용

광학 문자 인식 기술이 발전하여 더 이상 단순한 글꼴이 필요하지 않게 되었지만, OCR-A 글꼴은 계속 사용되고 있다. 전 세계적으로 수표 인코딩에 널리 사용되고 있다. 일부 락박스 회사는 여전히 청구서 반환 양식에 계정 번호와 지불해야 할 금액을 OCR-A로 인쇄하도록 요구한다. 또한 독특한 외관 때문에 광고 및 디스플레이 그래픽에도 사용되기도 한다.

특히, 블랙리스트와 같은 영화 및 텔레비전 시리즈의 자막과 프리텐더의 메인 타이틀에 사용된다. 또한, OCR-A는 크림슨 타이드13시간: 벵가지의 비밀 병사들 영화에도 사용된다.