솔루션 > 오시는길

Solution

폰트 내부의 조합 정보와 언어권별 출력방향을 분석하여

각 언어권의 문자 출력 방식을 맞도록 폰트 엔진을 지원합니다.



UniShape

유니코드는 전세계 언어의 글자의 표준이지만 단순히 유니코드 나열하는 것으로는 각 언어권의 조합과 출력 방향을 고려하여 완벽히 출력 할 수 없습니다.
Uinshape은 조합을 이용해 만들어진 폰트 내부의 조합 정보와 언어권별 출력방향을 분석하여 각 언어권의 문자 출력 방식에 맞도록 폰트 엔진을 지원합니다.
기본 폰트 엔진(레지스터라이져) 만 사용시에는 유니코드 영역의 글자는 출력하지만 아랍어처럼 오른쪽에서 왼쪽으로 출력되는 언어나
인도어처럼 문자의 조합에 따라서 다른 글자로 변형되어 출력되는 글자에 대해서는 기본 폰트 엔진(레지스터라이져) 만으로는 처리가 되지 않습니다.

UniShape 장점

기본폰트 엔진만으로 처리시, 유니코드 순서 그대로 출력되어 조합도 비정상으로 노출됩니다.

Unishape은 처리할 언어권을 구분하고 각 언어의 방향성과 폰트내의 조합정보를 처리하여 폰트엔진에 전달.
폰트 엔진(Unitype, Freetype)이 이런 조합정보와 글자의 방향성을 고려하여 출력하게 되면 조합된 글립과 문자의 방향에 맞춰 정상적인 출력이 가능합니다.

Unishape 처리 시 아랍어는 오른쪽에서 왼쪽으로 출력되지만, 라틴글자들은 왼쪽에서 오른쪽으로 출력.

UniShape 엔진구조

자소데이터 출력은 가능. 폰트의 스크립트 해석이 안되어 조합된 글자가 나오지 않고 해당글자의 낱자들로 출력

언어별 Script 해석을 통해 폰트엔진에서 출력한 Glyph을 재구성하여 Rendering

UniShape 엔진구조
언어권 유니코드 영역 문자 언어권 유니코드 영역 문자
Tibetan 0F00 - 0FFF Indi 0B80 - 0BFF Tamil
Khmer 1780 - 17FF 0C00 - 0C7F Telugu
Hebrew 0590 - 05FF 0C80 - 0CFF Kannada
Arabic 0600 - 06FF 0D00 - 0D7F Malayalam
0750 - 077F Arabic Supplement 0D80 - 0DFF Sinhala
FB50 – FDFF Arabic Presentation Forms-A Thai 0E00 - 0E7F
FE70 – FEFF Arabic Presentation Forms-B Myanmar 1000 - 109F
Indi 0900 - 097F Devanagari 한글/옛한글 1100 - 11FF Hangul Jamo
0980 - 09FF Bengali 3130 - 318F Hangul Compatibility Jamo
0A00 - 0A7F Gurmukhi A960 - A97C Hangul Jamo Extend-A(Unicode 5.2)
0A80 - 0AFF Gujarati AC00 - D7AF Hangul Syllables
0B00 - 0B7F Oriya D7B0 - D7FF Hangul Jamo Extend-B(Unicode 5.2)
Reference
현대자동차 오디오 Gen4(Arabic)
삼성전자 기어핏 1
(Arabic, Hindi, Kannaka, Tamil)
LG DTV (Arabic, Hindi)
빅솔론 Thermal 프린터
(Arabic, Hindi, Bengali)
Volvo 중장비 계기판
(Arabic, Hindi, Bengali, Gujarati)

기업 및 개인의 사용환경과 제품에 맞는 최적의 솔루션을 제안해 드립니다.

담당자 : 기술영업부 윤금식 수석 | 연락처 : 02.3471.6006 | 휴대폰 : 010.6212.9377 | 이메일 : sales@fonts.kr