폰트 자체가 Bitmap 형식으로 되어 있는 녀석입니다. 화면에 끄냥 뿌려주기만 하면 되는 녀석이라 처리 속도는 매우 빠르지만, 글자의 크기가 커지게 될 경우에는 비트맵을 그저 확장하는 형태로 계단현상 등이 발생합니다.
요즘에는 Font Size 에 따라서, 작은 Font Size의 경우에는 작은 Bitmap 을 사용하고, 큰 Font Size 의 경우에는 큰 Bitmap 을 사용하는 경우도 있지만, 이 부분은 용량적인 부분이 있기 때문에, Mobile Device에서는 적합성이 조금 떨어지던 방법이었죠. ( 이 방법도 요즘의 hardware spec 이라면 충분히 쓸만 하겠죠. )
c:\windows\fonts 에 보시면 아래와 같은 Font 파일들을 본 적 있으시죠?
이 중 A 로 표시된 폰트가 비티맵 폰트입니다. 비트맵 폰트를 보면 더블킬릭하면, Font Size 에 따른 예를 볼 수 있는데, 글자가 커진수록 계단현상이 심해져 이쁘지 않습니다.
외곽선 폰트
컴퓨텅 기술이 발전하면서 이제 계산을 바탕으로 폰트를 생성하는 것이 가능해졌습니다.
백터 그래픽이나 베지에 곡선을 폰트에 적용하여 만드는 "외곽선 폰트"의 형태가 생겼습니다. 이 폰트는 계산을 바탕으로 생성하는 것이기 때문에 Font size 와 상관없이 일정한 품질의 출력을 보장한다는 장점이 있습니다. Post Script, True Type, Open Type 폰트들이 이 외곽선 폰트에 속합니다.
포스트 스크립트( Post Script )
포스트 스크립트는 어도비(Adobe) 사가 개발한 폰트로 Type 1, 2, 3 등 다양한 포맷이 있습니다. Flash 에서 사용하던 벡터의 개념을 폰트에 적용하여 만든 것입니다. 주로 프린터에 많이 사용된다고 하네요.
트루 타입 ( True Type )
베지에 2차 곡선을 사용하는 폰트로 품질 향상은 크지 않지만, 속도가 빠르다는 장점이 있어 windows 에서 많이 사용되고 있습니다. Font 중에 "T" 로 표시되어 있는 폰트들이 True Type 입니다.
오픈 타입 ( Open Type )
어도비와 MS 사가 손잡고 오픈 타입 폰트를 제작했습니다. True Type + Post Script = Open Type 으로 볼 수 있죠. 유니코드를 바탕으로한 폰트로, 안드로이드가 채택하고 있는 폰트입니다. "O"로 표시되어 있는 녀석들이 Open Type 입니다.
안드로이드의 폰트
1. 기본 폰트 설정
안드로이드 기본 폰트는 Sans , Serif 두 가지 종류가 있습니다. Mono 는 각 글자의 넓이가 일정한 폰트입니다.
글씨체는 view 정의 xml 에서
typeface="sans" typeface="serif"
를 통해서 설정 할 수 있습니다.
2. 사용자 정의 폰트 사용하기
안드로이드는 OpenType 의 Font 를 채택하기 때문에 기본적으로는 OpenType 만 추가하여 사용할 수 있습니다.
2012. 11. 9 수정 : OpenType 이 아닌 TrueType 만 추가하여 사용 가능합니다.
OpenType 의 Font 를 구한 후에 assets\fonts\ 에 붙여넣기를 합니다.
이 부분은 이 글 원 필자 ( 저는 내용을 정리한 것 뿐입니다. 출처는 최상단에 있습니다. ) 도 방법이 없는 것으로 알고 있습니다. ( Framework 에서 기본 font 로 함께 build 하는 것을 제외하고는.. ) 저도 방법을 찾게 되면 따로 포스팅 하도록 하겠습니다.