[인사이트]㉭Ł글 폰트 규격 연구오Γ ュ ㈜변의 ○lOㅑㄱ1들

인사이트



들어가며

여러분은 사용하는 폰트에 어떤 글자들이 있는지 혹은 없는지 알고 있나요? 기껏 마음에 드는 폰트를 찾아 작업에 적용했더니 원하는 글자가 입력이 안 되거나 기본 폰트로 표시되는 경험을 한 번쯤 해본 적 있을 거예요. 이는 폰트마다 지원하는 문자 범위가 달라 폰트 파일에 포함된 글자가 다 다르기 때문이에요. 유니코드 표준(전 세계 모든 문자를 컴퓨터에서 일관되게 표현할 수 있도록 설계된 산업 표준)에 따르면 현재까지 유니코드로 등록된 글자는 16만여 개 가까이 된다고 해요. 폰트가 이 모든 글자를 지원할 수는 없기 때문에 이 중에 필요한 글자들을 추려 사용자와 사용 환경에 맞는 폰트 규격을 갖추고 있어요. 저희가 연구한 산돌 폰트 규격(SD-KR) 또한 현대 국내 사용자들의 환경을 고려해 적절한 글자들로 구성한 한글 폰트 규격이에요. 그럼 이러한 연구를 어떻게 하게 되었는지 또 어떻게 했는지 살펴볼까요?

유니코드는 전세계 모든 문자를 표현할 수 있도록 지금도 문자를 수집하고 있다. 유니코드 웹사이트 메인 화면 (이미지 출처 - unicode.org)



폰트 규격 히스토리 — 한글 2350에서 11172 그리고 2780까지

산돌구름 웹 사이트 또는 다른 플랫폼에서 “한글 2,350자 / 라틴 95자 / 약물 985자”과 같은 글을 본 적 있나요? 이는 폰트가 어떤 글자들을 가지고 있는지, 어떤 문자를 지원하는지 등을 알려주는 ‘지원 범위’에 관한 정보 표시예요. 즉, ‘이 폰트는 한글 낱글자 2,350자, 알파벳, 문장 부호, 숫자 등을 포함한 기본 라틴 95자, 그 외 번호, 도형, 그림, 단위 기호 등을 포함한 약물* 985자를 가지고 있다’는 뜻이에요. 그럼 여기서 한글 ‘2,350자’는 어떻게 나온 숫자일까요?

현대 한글은 ‘ㄱ, ㄴ, ㄷ’ 같은 닿자**와 ‘ㅏ, ㅗ, ㅘ’ 같은 홀자***인 쪽자****들을 조합해 총 11,172자를 만들 수 있어요. 1974년 한국 표준 협회는 컴퓨터에서 한글에 표준화된 코드를 부여하기 위해 ‘KS C 5601-1974(정보 교환용 부호)’을 재정했어요. 당시 한글 인코딩*****(입력) 방식으로 홀닿자 51자를 조합하는 ‘조합형 한글’을 채택했기 때문에 입력할 수 있는 한글의 수에 제약이 없었어요. 더불어 기본적인 알파벳과 로마 문자용 기호(34자), 한글 문자용 기호(13자)를 포함하는 규격에 코드를 부여했어요. 국내 사용 환경을 고려한 제정이었지만 국제적으로 활용 중이던 아스키코드(ASCIICode)와 충돌을 일으키는 등 국제 호환성에 문제가 있었어요.

*약물: 인쇄에서 쓰이는 활자 이외의 여러 기호. 쉬운 소통을 위해 ‘약물’, ‘기호’, ‘특수문자’ 등의 표현은 모두 ‘부호’로 통일했다. 
**닿자: 홀자와 닿아 소리를 내는 글자인 닿소리 글자의 준말.
***홀자: 홀로 소리를 내는 글자인 홀소리 글자의 준말.
****쪽자: 낱글자를 이루는 단위.
*****인코딩: 문자 인코딩. 문자를 약속한 규칙에 따라 코드로 변환하는 처리 과정 또는 이를 위해 미리 약속한 코드 변환 규칙. 

KS C 5601-1974 중 로마 문자와 한글 문자의 8단위 ISO 코드를 지정하는 표. (이미지 출처 – standard.go.kr)


KS C 5601-1974 중 로마 문자용 기호의 형태와 명칭, 부호표상의 위치를 설명하는 표. (이미지 출처 – standard.go.kr)


이후 유니코드 협회는 ISO 2022(문자를 부호화하는 기술, ISO 표준)를 활용하여 서로 다른 문자가 전 세계 어디서든 동일하게 표현될 수 있도록 각각의 글자에 고유한 코드를 부여하도록 하는 국제 산업 표준화(Unicode 1.0)를 준비하고 있었어요. 이때 한·중·일 문자 영역으로 할당된 2바이트 코드 영역 중 한글 영역(약 8,192자)을 확보하기 위해 1987년 ‘KS C 5601-1987’을 ISO 2022에 준하도록 개정했고 이를 ISO(국제 표준화 기구)에 보고했어요. 8천여 자 중에서 한글과 함께 사용해야 하는 한자, 부호, 다른 언어 문자 등을 할애하고 남은 2,350자에 ‘완성형 한글’을 지정할 수 있었어요. 2,350자를 선정한 방식은 한국표준연구소, KAIST 등에서 연구한 한글 빈출자 조사를 바탕으로 인쇄소 및 신문사 집단, 산업체 집단 그리고 서적 및 사전에서 사용하는 한글 글자를 분석하여 선정했다고 해요. 이렇게 탄생한 ‘한글 2,350자’가 현재까지도 살아남아 한글 폰트의 가장 최소 규격으로 자리 잡게 되었어요.

KS X 1001:2004 해설 중 1987년 개정 당시 한글 글자 마디 선정 방법에 대한 설명 (이미지 출처 – standard.go.kr)


한글 2,350자만으로도 일상에서 사용하기에 큰 어려움은 없었지만, 방언과 외래어 표기 한계, 문학적 표현 제약, 국어 정서법에 필요한 글자 부족 등의 이유로 — 조합형 한글(11,172자)에서 완성형 한글(2,350자)로 — 개정 당시에도 교육계를 비롯한 많은 분야에서 이 규격에 대한 비판이 있었어요. 이에 1992년 한국 표준 협회는 당시 민간에서 많이 사용하던 조합형 한글 코드를 복수 표준화(KS X 1001:1992*)하면서 11,172자를 모두 규격에 포함했어요. 더불어 더욱 많은 문자를 코드화할 수 있는 ISO 10646이 국제 표준화되면서 Unicode 2.0에도 한글 11,172자가 모두 포함되었고, Adobe사의 문자 모음 규격인 ‘Adobe-Korea 1-2’도 ‘KS X 1001:1992’을 채택하며 모든 현대 한글을 포함했어요. 

*KS X 1001:1992: KS 규격 번호 체계가 바뀌며 KS X 1001로 번호가 변경됨, KS C 5601-1992라고도 부름.

Adobe technical note 중 Adobe-Korea 1-2에 포함된 KS X 1002:1992에 대한 안내 (이미지 출처 - adobe.com)


한글을 컴퓨터에 입출력하는 데 더 이상 기술적 제약이 있진 않았지만, 많은 폰트 회사들은 최초의 완성형 한글 규격이었던 ‘KS C 5601-1987’을 기준으로 폰트를 만들었어요. 그렇기 때문에 앞서 얘기한 방언과 외래어 표기 등의 문제들이 여전히 잔존했고, 시간이 흐름에 따라 새롭게 등장한 외국어, 외계어 등을 표현하는 데도 많은 한계가 있었어요. 이러한 불편을 해소하기 위해 폰트 회사들은 그때그때 필요한 글자를 추가해 저마다의 기준으로 폰트를 만들게 되었어요. 이는 결국 여러 폰트가 서로 호환이 안 되는 상황이 발생하는 문제를 초래했어요.

이러한 문제 인식을 바탕으로, 시간이 흐르며 바뀐 표준말과 새로운 언어 습관을 반영한 현대에 맞는 한글 규격을 제안하기 위해 2015년 안그라픽스 타이포그라피연구소에서 「KS 코드 완성형 한글의 추가 글자 제안」(노민지, 윤민구, 2015)이라는 논문을 발표했어요. 이 연구에서는 표준말(9자), 준말(39자), 방언(41자), 활용형 표기(67자), 감탄사, 의성어, 신조어(42자)를 선별해 2,350자에서 224자를 추가한 2,574자를 제안했어요. 

2,350자에 포함되지 않는 글자들. 방언, 성씨, 외국어 등을 표기할 때 필요한 글자가 깨지는 현상이 발생


이 연구를 토대로 2017년 한국폰트협회(노민지, 심우진, 이용제)가 진행한 “한글 코드 표준화 연구”(활자공간, 산돌 지원)를 통해 국립국어원, 국민대학교 한글공학 정보검색 연구소, 고려대학교 민족문화연구소 등에서 실시한 현대 국어 사용 빈도 조사와 함께 도로명 주소, 성씨, 학습용 어휘 목록 등을 분석해 새로운 한글 2,774자 규격을 발표했어요. 1998년 이후 업데이트가 되지 않았던 ‘Adobe-korea 1-2’를 개선하기 위해 준비 중이던 Adobe사 또한 한국폰트협회의 규격과 싱크를 맞추고자 했고, 한국폰트협회(한글, 문장부호 연구)와 산돌(한글 오픈타입 피쳐 연구)과 협력하여 최종적으로 한글 2,780자(외국어 표기 글자, 입력 중 노출 글자 추가)가 포함된 새로운 규격인 ‘Adobe-KR 9’을 2018년 발표했어요. 한국폰트협회 또한 이듬해인 2019년 독립 디자이너의 폰트 제작 환경을 개선하고 전체 제작 글자 수를 줄이기 위해 한글 2,780자에 축소된 범위의 부호와 외국 문자를 가지는 ‘KFA-HFCS 1.0’을 발표했어요. 오늘날 폰트 규격으로 많이 활용하는 한글 2,780자는 이렇게 만들어지게 되었어요.



SD-KR 제작 배경 — 효율적인 폰트 제작을 위해

우리가 책을 읽을 때, 친구와 대화할 때, 주민센터에서 서류를 작성할 때 얼마나 많은 부호를 만나게 될까요? 그리고 각각의 상황에서 사용하는 부호의 종류가 서로 얼마나 다를까요? 지금 이 글에서도 볼 수 있듯 한글을 쓰기 위해서 반드시 필요한 문장부호들이 있어요. 그리고 상황에 따라 엄격하게 정의된 부호를 사용해야 할 때도 있고, 가벼운 용도로 유연하게 활용하는 부호도 있죠. 앞서 한글의 사례와 마찬가지로 부호 또한 수만 가지의 종류 중 우리에게 필요한 것들을 잘 추려 폰트에 포함하는 과정이 필수적이에요.

우리가 지금 흔히 얘기하는 “약물 985자”는 한글 2,350자와 같은 시기인 1987년 정해진 부호들이에요. “빈도, 용도 및 국내 각계의 의견 등을 고려하여 계통적으로 포함시켰다”고 설명되어 있지만 구성이 적절한지에 대한 비판은 이후로 계속되어 왔어요. ‘현행 KS 완성형 한글 코드의 문제점’(국어생활 1989년 가을호, 김충회)에서는 “특수 문자 중에서 글자쇠에서 처리 가능한 것은 과감히 삭제할 필요가 있다. ~ ‘(가), (나), (다)..., (a),(b),(c)...’ 등 차례를 나타내는 기호, ‘mm, cm, mg, kg’ 등 단위를 나타내는 기호, 기타 ‘№,㏇,(tm),㏂,㏘,℡’ 등 200여 자 이상을 뽑아낼 수 있을 듯하다.”라고 목소리를 내기도 했어요. (아티클 본문에 사용된 「SD 그레타산스」도 활용도가 낮은 부호는 제작하지 않았기 때문에 보시는 것처럼 몇몇 글자가 시스템 폰트로 대체되는 모습을 볼 수 있어요.)

국어생활 '89 가을호에 게재된 ‘현행 KS 완성형 한글 코드의 문제점’


‘(2) 외국 문자 및 부호 문제’에서 다룬 부호 구성의 문제점


985자에는 함께 써야 할 부호와 문자가 없어 사용할 수 없는 가나 문자, 그리스 문자, 키릴 문자 등이 포함되어 있어요. 이뿐만 아니라 오늘날 PC 환경에서는 사용에 적합하지 않은 괘선 기호, 실제로 수식에 활용할 수 없는 수학 기호 등 사용할 수 없는 글자들이 상당수 있어요. 단위 기호는 유니코드에서도 조합된 하나의 글자가 아닌 실제로 타이핑할 수 있는 알파벳을 조합하여 쓰도록 권장하고 있기 때문에 로마 문자권 국가들조차 잘 사용하지 않는 글자들이에요. 

섭씨온도를 나타낼 때, 전각 단위 기호 문자인 ‘℃’(DEGREE CELSIUS) 대신 ‘°’(DEGREE SIGN) + 대문자 ‘C’를 조합해 쓰도록 권장하는 내용. (이미지 출처 – unicode.org)


‘싸이월드체’라고 하는 다양한 특수문자를 조합해 한글을 표현하던 방식이 유행했을 때를 제외하고는 대부분의 사용자들은 이런 부호를 사용하지 않았어요. 사람들이 쓰지 않는 부호가 많음에도 985자로 정해진 규격이 있다 보니 상당수의 폰트들이 그 부호를 포함할 수밖에 없었어요. 이 과정에서 해당 부호가 무엇이며 어떻게 사용하는지, 어떻게 그리는 것이 맞는지 정확한 이해 없이 기존 폰트에 포함된 글자를 관습적으로 따라 그려 정해진 글자 수를 채우기에 급급한 상황이 발생했어요. 이는 폰트의 완성도를 떨어트리면서 사용자들의 사용에 혼란을 초래할 수 있어요.

대표적인 예로 수의 크고 작음을 비교할 때 사용하는 부호인 ‘<’(LESS-THAN SIGN), ‘>’(GREATER-THAN SIGN)을 웹상에서 간편하게 타이핑할 수 있다는 이유로 제목을 나타낼 때 사용하는 ‘⟨’(LEFT ANGLE BRACKET), ‘⟩’(RIGHT ANGLE BRACKET)으로 그려 넣어 제작하거나, 모두 동일한 너비를 가져야 하는 전각 부호를 제각각의 너비로 디자인하는 등의 문제는 오히려 부호를 본래 용도로 사용했을 때 제 기능을 하지 못하는 상황을 만들었어요.

잘못된 부호 사용 예시. 전각 단위 기호, 전각 문장 부호 대신 직접 입력하는 방식을 권장한다. 괄호와 부등호를 혼동하지 않아야 한다.


쓰임이 적은 부호들을 정리하고, 현대 사용 환경에 맞는 부호 규격을 마련하기 위해 국립한글박물관에서는 2015년2016년 2차에 걸쳐 글꼴 연구 소모임을 진행하여 「한글 문장 부호 코드 체계 개선안」(심우진, 2016), 「한글 문장부호 코드 현황 조사 및 코드 호환과 추가 제안」(노영권, 김대권, 2016)을 발표하며 사용자 편의를 고려한 한글 기본 문장부호 코드 체계를 제안하고 한글 문장부호의 여러 가지 문제점과 디자인 방향을 정리했어요. 이 연구는 앞서 설명했던 한국 폰트 협회의 연구로 이어졌고 한국 폰트 협회 규격(KFA-HFCS 1.0)에 적용되었어요. 그리고 Adobe-KR-9 규격 또한 이 연구의 결과가 많은 부분 반영되었어요. 

사실 Adobe사에서 규격을 새롭게 업데이트하고자 했던 가장 큰 이유는 잘 사용하지 않는 부호 글리프들을 규격에서 제외하기 위해서였어요. 그렇기 때문에 KS X 1001에 포함된 부호들을 Adobe-KR-0(Supplement 0), 3, 4, 5, 9에 중요도와 용도에 따라 분리해 배치했어요. 전체 부호들이 모두 뭉뚱그려져 있던 이전 규격에 비해 작업자가 필요에 따라 골라 제작할 수 있도록 영역을 세분화했지만 그럼에도 여전히 제작자는 어떤 영역을 폰트에 포함해야 하고, 어떤 부호를 그리는 것이 좋은지 판단하기 어려웠어요. 이는 결국 제각각의 영역에서 필요한 부호만 그리는 상황을 만들어 사용자 입장에서도 어떤 폰트에 어떤 글자가 있는지 일일이 확인해야 하는 상황에 놓여 불편함을 초래했어요.

SD-KR은 이러한 불편을 해소하는 데에 중점을 두었어요. 폰트를 만드는 작업자도 쓰임이 많은 부호가 무엇인지 알고 효율적으로 작업할 수 있도록 돕고, 사용자도 본인의 쓰임에 맞는 폰트를 쉽게 알고 고를 수 있도록 돕기 위해 노력했어요. 그리고 각 글자의 원래 용도가 무엇이며, 어떻게 그리는 것인지에 대한 정보를 작업자들에게 제공하기 위해 연구했어요.


SD-KR 제작 과정

우선 연구의 출발은 기존 규격을 파헤쳐 보는 것이었어요. KS X 1001 규격에 포함된 글자들이 왜 표준 규격에 포함된 것인지, 용도가 무엇이며 어떻게 그리는 것이 맞는지를 조사했어요. 이 과정에서 Adobe-KR-9 규격은 어떻게 부호를 분류했고, 이 방식을 활용할 때 불편한 점이 무엇인지도 함께 조사했어요. 

Adobe-KR-9의 모든 글자를 표로 만들고 그 중 산돌이 리테일 폰트에 주로 포함하는 글자가 무엇인지 확인하는 과정


다양한 분야에서 사용되는 부호들이 뒤섞여 있는 만큼 각각의 부호의 유래와 용도, 그리는 법을 조사하기 위해서는 관련된 웹 사이트, 서적, 자료에 뿔뿔이 흩어진 정보들을 하나하나 주워 모으는 수밖에 없었어요. 문자는 언어와 닮아서 시간이 흐름에 따라 최초의 용도가 환경에 따라 확장되기도 하고, 그 유래가 다양해서 많은 가설이 존재하기도 하기 때문에 그 정보들을 하나로 규정짓기보다는 수집한 내용을 가능한 전부 기록하고 그 출처를 전부 표시하려고 노력했어요. 이 과정은 이후 조사한 글자들을 선별하는 과정에서 해당 글자가 얼마나 큰 범용성을 가지는지, 특정 분야에서 얼마나 필수적인지를 파악하는 데 큰 도움이 되었어요.

KS X 1001의 모든 부호에 대한 정보를 수집하고 정리한 시트


이렇게 수집한 자료를 바탕으로 그동안 폰트를 제작하거나 클라이언트와 소통할 때 이슈가 있었던 글자들 위주로 논의하며 쓰임이 많은 글자들을 선별하는 과정을 진행했어요. 이 과정을 통해 일차적으로 필수 부호와 확장 부호를 분류했고, 이 결과를 토대로 산돌 내부 디자이너와 선행 연구자들에게 설문을 진행했어요.

이슈가 있는 글자를 산돌 내부 디자이너들과 함께 논의하기 위한 문서


설문 문항 예시


2차례의 설문과 산돌이 수집 중인 빈출자 조사의 결과를 분석해 최종적으로 쓰임이 많은 140자의 ‘필수 부호’, 이를 포함한 446자의 ‘확장 부호’, Adobe-KR-0~5와 호환할 수 있는 1,022자의 ‘전체 부호’로 부호의 규격을 분류했어요. 그리고 한글 규격과 함께 묶어 높은 제작 효율을 가지며 현대 한글 타이포그라피 환경에 필수적인 글자를 갖춘 규격을 ‘SD-KR 1’이라 이름 짓고 한글 2,780자와 필수 부호 140자를 포함시켰어요. 현대 한글 전체를 입력할 수 있는 한글 11,172자와 보다 다양한 타이포그라피 조판에 필요한 확장 부호 446자를 포함해 ‘SD-KR 2’로 이름 지었어요. 더 높은 범용성을 갖춰 기본적인 문서 작성, 제목용으로 특정 단어 또는 짧은 문장이 필요할 때는 SD-KR 1을, 보다 많은 양의 텍스트를 다룰 때는 SD-KR 2를 활용할 수 있어요. 



SD-KR 활용 — 앞으로 어떻게 쓸건지?

이러한 연구의 결과를 누구나 볼 수 있도록 웹 사이트로 제작했어요. 웹사이트의 ‘알아보기’ 페이지에서는 SD-KR에 대한 소개와 연구에 참고한 자료의 출처를 확인할 수 있어요. ‘자세히보기’ 페이지에서는 규격에 포함된 글자들이 무엇인지 확인할 수 있고, 작업자들이 부호의 용도, 유래, 권장하는 그리기 법을 볼 수 있어 작업에 활용하기 좋아요. 마지막으로 ‘내려받기’ 페이지를 통해서 글립스 작업에 유용하도록 규격별 샘플 파일과 목록 필터를 제공하고 있어요.

산돌 타입랩 자세히보기 페이지


연구를 시작한 목적처럼 더욱 많은 사람들이 쓰임새에 맞는 폰트를 쉽게 고르고 이를 작업에 활용할 수 있도록 앞으로 산돌구름 웹페이지에 폰트의 규격에 대해 정확한 정보 표시를 할 예정이에요. 예를 들어 사용자가 현재 작업에 사용 중인 폰트가 ‘SD-KR 1’일 때, 교체하고 싶은 폰트의 규격 또한 ‘SD-KR 1’이라면 아무런 걱정 없이 폰트를 교체할 수 있는 거죠! 그리고 산돌구름 웹사이트의 폰트 상세 페이지에서 폰트에 포함된 모든 글리프를 구매하기 전 직접 확인할 수 있도록 제공할 예정이에요. 이를 통해 사용자가 원하는 글자가 있는지, 어떻게 디자인되어 있는지 직접 확인하고 구매할 수 있어요. 이 업데이트는 현재 준비 중이니 많은 기대 부탁드려요.

내부적으로 많은 검토를 거쳤음에도 많은 양의 정보를 모으고 나누는 과정에서 정보를 잘못 기재하거나, 미처 수집하지 못한 정보가 분명히 있을 거라 생각해요. 공개된 웹사이트와 이 아티클을 보고 잘못되었거나 보완이 필요한 부분이 있다면 이 링크를 통해 의견을 남겨주세요. 많은 제작자가 원하는 쓰임새에 맞는 폰트를 쉽게 제작하고, 더 많은 사람들이 더욱 쉽게 자신이 원하는 폰트를 고르고 사용할 수 있기를 바라는 마음으로 연구를 진행했어요. 앞선 선행 연구들이 이 연구의 밑거름이 되었듯 이 연구 또한 이어질 후속 연구의 자양분이 되길 기대하는 마음으로 글을 마칠게요. 



참고

standard.go.kr
unicode.org
adobe.com
koreafont.or.kr
typography-dictionary.kr
wikipedia.org
현행 KS 완성형 한글 코드의 문제점
노민지, 윤민구(2015). KS 코드 완성형 한글의 추가 글자 제안.
심우진(2016). 한글 문장 부호 코드 체계 개선안.
노영권, 김대권(2016). 한글 문장부호 코드 현황 조사 및 코드 호환과 추가 제안.


정태영
타입랩팀
책을 좋아하다 글을 좋아하다 글자를 좋아하다
글자를 그리다 글자를 공부하고 있네요