클리어타입
1. 개요
클리어타입(MS ClearType)은 마이크로소프트에서 개발한, 안티 에일리어싱 기술을 통한 윈도우즈 글꼴의 가독성 향상 기법이다. 1998년 COMDEX에서 최초로 공개했다. Windows XP는 선택, Windows Vista부터 기본적으로 설정이 되어있다. 다만 Direct2D를 통한 출력에서는 클리어타입으로 출력할지 그레이스케일 렌더링으로 출력할지를 정할 수 있고, Windows 10의 UWP 앱은 그레이스케일 렌더링을 통한 출력이 기본값이다.[1]
2. 상세
간단히 Subpixel rendering을 통한 LCD에 최적화된 X축 안티 앨리어싱이라고 보면 된다. 기존의 서체를 부드럽게 보여주는 기술들은 작은 크기의 글자가 뭉개지고 전체적으로 흐릿하게 보이는 단점이 있었으나 이를 개선한 것이 클리어타입이다.
LCD 모니터의 경우 일반적인 종이출판물에 비해 도트가 훨씬 조밀하지 못하다.[2] 따라서, LCD 모니터에서 폰트를 그냥 표현하면 종이출판물에 비해 가독성이 매우 떨어진다. 이것을 보완하기 위해 만들어진것이 Subpixel rendering이다. 이것은 한마디로 LCD의 subpixel, 즉 RGB 소자를 이용하여 해상도를 최대 3배까지 높게 보이도록 만드는것이다. 보통 LCD에서 점 하나는 빨강, 초록, 파랑 3개의 서로 다른 색의 소자로 구성되며, 이것이 내는 색을 조합하여 픽셀당 여러가지 색상을 표현하는것이다. 예를 들어 1000픽셀이라면, 빛을 내는 빨강, 초록, 파랑 소자가 각각 1000개씩, 총 3000개 있다는 소리이다. 이 Subpixel rendering을 마이크로소프트에서 구현한 방식을 ClearType이라고 한다. 다만, Subpixel rendering의 단점은 RGB 배열에 따라 서로 다른 알고리즘을 요구하기 때문에 모니터에 따라 설정을 해줘야 한다는 것이다.[3] 그러나 Windows 10 RS4 기준으로도 설정값이 제대로 저장되지 않는 버그가 있다.[4]
3. 특징
맑은 고딕, 나눔고딕[5] , Constantia, Cambria, Corbel, Candara, Calibri, Consolas 등이 클리어타입에 최적화된 서체이다. GDI의 ClearType 구현과 달리 최신 WPF(Windows Presentation Foundation)의 ClearType에서는 하위픽셀 위치지정(폰트힌팅)이란 기법을 사용하여 더욱 깔끔한 폰트 렌더링이 가능하다. 다만 macOS나 우분투는 기본으로 모든 폰트의 앨리어싱이 폰트힌팅까지 구현되어 있다. 유독 클리어타입만 그런 기능이 제대로 지원되지 않았단 점은 윈도우의 인지도와 편리성을 생각해 보면 조금 아이러니한 면이 있다.
클리어타입이 설정되면 안티 앨리어싱이 적용되어, 알파벳보다 오밀조밀한 한글서체는 똑떨어지게 보이지 않는 탓에 지탄을 받고 있다. 다만 가독성 설정[6] 을 통해 간단히 조정할 수 있다.
Windows XP에서는 클리어타입을 적용해도 가독성이 그다지 좋지 못하다. 이 문제는 클리어타입을 기본으로 사용하는 Windows Vista에서 개선되었다.
4. 장점
서브픽셀 렌더링에도 여러가지 다른 방식들이 존재하는데, 마이크로소프트의 클리어타입은 픽셀 그리드를 강력하게 준수하며 주변부와의 명암비를 극도로 높인것으로 유명하다. 덕분에 해상력이 낮은 LCD에서도 작은 글씨의 가독성이 살아난다. 여기서 직접 비교해볼 수 있다. 실제로 그레이스케일 렌더링은 저해상도 스크린에서는 클리어타입에 비해 흐릿하고 가독성이 떨어진다.
5. 단점
'서브픽셀 렌더링'이라는 특징 때문에 글자의 색이 왜곡되어 보인다. 그림판에서 아무 글자나 친 다음 확대해보면, 글자 주변이 붉은색/푸른색으로 번져있는 것을 확인할 수 있다.
또한 픽셀 그리드를 준수하는 과정에서 디테일한 디자인 요소들이 잘려나가는 경우가 많아[7] , 서로 다른 폰트들도 다 비슷비슷하게 보인다는 단점으로 폰트 디자이너들에게 신나게 까인다. 뿐만 아니라, 위에서 언급되었듯 서브픽셀 렌더링인 만큼 픽셀 배치 방식의 영향을 받는데, 이 때문에 펜타일 레이아웃 등 다양한 서브픽셀 배치나 화면 회전에 의해 보이는 서브픽셀이 달라지는 태블릿에서는 힘을 못 쓰고 있다.
클리어타입 자체가 낮은 PPI 디스플레이에 최적화된 기술이라 그런지, 고해상도 HiDPI 환경에서는 다른 폰트 렌더링 방식에 비해 결과가 매끄럽지 못하다는 문제점이 있다. 그래서 최근에는 MS도 서브픽셀 렌더링을 버리고 다시 그레이스케일 렌더링을 권장하는 추세이다.[8]
6. 관련 문서 및 링크
[1] 참고. 이런 이유로 저해상도 기기에서는 다소 흐릿하게 보인다.[2] 물론 레티나 디스플레이 같이 PPI를 늘리면 훨씬 선명한 화면으로 볼 수 있으나, 현실적으로는 FHD까지가 한계이며 그 한계는 LG G3에서 적나라하게 드러났다.[3] 현재 나오는 모니터는 대부분 RGB 배열이지만, 간혹 BGR 같은 배열인 경우도 있다. 배열순서가 맞지 않으면 글자의 주변부가 번져 보이며, 오히려 눈이 쉽게 피로해진다. 물론 순서만 다르다면 조정이 가능하겠지만, 펜타일처럼 구조가 전혀 다른 경우도 있다는 것이 문제라면 문제.[4] 클리어타입 조정 메뉴에서 어떤 옵션을 선택하든 한 가지 설정으로 고정되어버린다.[5] 산돌 공식 홈페이지의 소개에 따르면 그렇다.[6] Windows 7 기준, 제어판→모양 및 개인 설정→디스플레이→ClearType 텍스트 조정.[7] 클리어타입의 방식은 서브픽셀 렌더링 중에서도 꽤 과하게 잘려나가는 편이다.[8] 대표적인 사례로 UWP 앱이 있다.