freetype에서 horiBearingY 구하기
프로그래밍 :
2009/05/14 17:51
| 기존에 폰트를 렌더링 할 시 baseline을 계산하기 위해 ascender를 계산 한 후 face->glyph->bitmap_top을 이용하여 baseline과 합하여 폰트가 그려질 0,0을 찾았다. 그런데 이것이 일정 크기가 넘어가면 baseline이 안맞는 현상이 발생했다. 조사해보니 bitmap_top이 문제였다. 이 값이 계속 0이 나와서 매뉴얼을 다시 뒤져보니.. 이 값은 FT_GLYPH_FORMAT_BITMAP일 때만 유효하다더라.. 즉.. 일정 크기가 넘어가면 트루타입 폰트는 스케일이 가능한 FT_GLYPH_FORMAT_OUTLINE으로 리턴을 한다. 따라서 bitmap_top을 이용해서는 안되고.. face->glyph->metrics.horiBearingY를 이용하여야 한다. 이 값은 FT_GLYPH_FORMAT_BITMAP일 때도 유효하니 무조건 이거만 써도 무방하다. 이 값을 픽셀값으로 변환할려면 64로 나누어야한다. ps. freetype 튜토리얼 개나 주세요. |





댓글을 달아 주세요