2013-08-20 4 views
1

글자 너비를 TrueType 글꼴로 캡처하는 경우 해당 TTF 파일을 fontforge으로 변환하여 AFM (이진수가 아님)으로 변환합니다. 그런 다음 문자 파일을 구문 분석하여 문자 폭을 캡처합니다.TTF 글꼴 파일을 구문 분석하여 글리프 너비를 가져 오는 방법은 무엇입니까?

글리프 너비를 캡처하려면 이진 파일 TTF을 직접 구문 분석하는 쉬운 방법이 있어야합니다.

나는 쉘 스크립트 또는 C에 대한 전략을 높이 평가하지만 모든 프로그래밍 언어는 아이디어가 핵심이기 때문에 OK이며 코드를 적용 할 수 있습니다.

답변

4

너비가 인 너비라고 가정하면 관심있는 내용은 hmtx table입니다. hmtx을 분석하기 위해, 물론

typedef struct _longHorMetric { 
    USHORT advanceWidth; 
    SHORT  lsb; 
} longHorMetric; 

당신은 또한 일반적으로 how to locate font tables 알고해야합니다, 당신은 또한 numberOfHMetrics이 필요합니다 : 당신이 구조는 볼 수 있듯이 그것은 구문 분석 할 매우 간단합니다 값을 hhea 테이블에서 가져오고 글꼴의 numGlyphs을 maxp 테이블에서 가져옵니다. 이 모든 구조는 링크에서 제공되며 모든 언어로 파싱하기 쉽습니다.