이곳은 백업 블로그 입니다. 현재 캐플이 활동 중인 블로그는 CAppleBlog.co.kr 입니다. 최신 정보들은 새로운 블로그에서 확인해 보세요. ^^

- 이곳은 기존 블로그들의 글을 한군데로 모아 놓은 백업 블로그입니다.

- 현재 링크는 대부분 올바르지 않으며 이러한 링크들은 모두 cappleblog.co.kr 로 이동합니다. (※ 링크 주의)

- 블로그와 커뮤니티는 서로 다른 공간입니다.(로그인을 따로 해야합니다.)

- 저는 윈티티(WinTT)이자 신비(ShinB)이며 캐플(CApple)입니다. 편한대로 불러주세요.

클리어타입(ClearType)이란?


클리어타입(ClearType) 이란 마이크로소프트 윈도우의 글꼴 렌더링 기술로서 윈도우 XP 부터 지원되기 시작했습니다. 클리어타입은 모니터 화면에 표시되는 문자열의 모양을 개선해 주어 가독성을 높이고 눈의 피로도를 낮춰주는 기술 입니다. 특히 현재 가장 많이 사용되는 LCD 모니터에서 그 효과가 두드러지게 나타나는 특성을 가지고 있습니다. 물론 기존의 CRT 모니터에서도 LCD 만큼은 아니지만 효과를 볼 수 있는 기술입니다.






모니터의 픽셀와 계단 현상


우리가 사용하는 모니터는 픽셀(Pixel, 화소)의 집합으로 이루어져 있습니다. 픽셀이란 디지털 화면의 단위로, 표현할 수 있는 가장 작은 점 하나를 의미합니다. 이러한 점들이 모여 화면을 구성하는 것이죠. LCD 와 같은 일반적인 모니터에서 하나의 픽셀은 다시 세로 막대 형태의 세 개에 서브 픽셀(Sub-Pixel)[하나의 레드, 하나의 그린, 하나의 블루, R-G-B, 빛의 삼원색]로 이루어져 있습니다.

픽셀(픽셀)의 구조



R(Red) - G(Green) - B(Blue) 라는 빛의 삼원색을 통해 하나의 픽셀에서 모든 색을 표현하는 것이죠. 이러한 R-G-B 서브 픽셀은 매우 작기 때문에 인간의 눈으로는 개별적으로 인식을 하는 게 불가능합니다. 이러한 R-G-B 서브 픽셀이 모두 빛을 내보내면 인간의 눈은 개별적으로 인식하지 못하고 R-G-B 가 섞인 흰색으로 인식하는 것 입니다. 모두 꺼져있다면? 검은 색으로 인식을 하는 것이구요. 이것이 바로 모니터가 색과 화면을 표현하는 기본 원리입니다. 모니터 화면은 이와 같은 R-G-B 서브 픽셀이 연속된 형태로 이루어져 있습니다.

모니터는 이와 같은 Red - Green - Blue 의 연속이다.




자, 서브 픽셀은 잠시 있어버리고 디지털 화면에서 표현할 수 있는 가장 작은 점인 픽셀 단위에서 이야기를 해 보도록 하겠습니다. 모니터에서 처리되는 모든 그래픽은 이러한 픽셀을 최소 단위로 하여 표현하게 됩니다. 컴퓨터에서 어떠한 선을 표현한다면 픽셀 단위에서는 어떻게 보이게 될까요?

하나의 선을 픽셀 단위로 확대해 본 모습



보시는 것과 같이 언뜻 직선으로 보이는 선도 픽셀 단위로 확대를 하게 되면 이와 같이 계단처럼 각이져서 표현되게 됩니다. 이는 선을 이루는 모니터 픽셀의 개수에 한계가 있으며 하나의 픽셀은 직사각형의 작은 네모꼴이기 때문에 어쩔 수 없이 일어나는 현상입니다. 이러한 현상을 계단 현상(Aliasing) 이라고 합니다. 계단 현상은 곡선에서 그리고 가는 선일 수록 더욱 두드러집니다.[이러한 계단 현상은 해상도가 낮은 이미지를 확대했을 때에도 일어나게 됩니다.]

글자라는 것은 바로 이러한 직선과 곡선의 연속된 형태라고 할 수 있습니다. 그리고 글자를 이루는 선은 보통 매우 가늘죠. 그래서 모니터 화면에서 표시되는 글자는 이러한 계단 현상에 취약할 수 밖에 없으며 계단 현상이 심해지면 글자의 가독성은 매우 떨어지고 사람의 눈은 쉽게 피로해 집니다. 이러한 연유로 같은 글이라도 종이에 인쇄된 글을 볼 때 보다 모니터를 통해 글을 보게 되면 가독성이 떨어지고 눈이 쉽게 피로해지는 것 입니다.[물론 종이와 모니터의 차이는 이 외에도 다른 여러가지 이유가 복합적으로 작용하게 됩니다.]




앤티 앨리어싱과 클리어타입


앤티 앨리어싱


이러한 계단 현상을 줄여주면 딱딱 끊어져서 표현되던 선을 좀 더 원래의 형태에 가깝게 부드럽게 표현할 수 있습니다. 이렇게 계단 현상을 줄이는 것을 앤티 앨리어싱(Anti-Aliasing, AA) 이라고 합니다. 클리어타입은 이러한 앤티 앨리어싱을 통해 글자를 좀 더 미려하게 표시할 수 있도록 해주는 글꼴 렌더링 기술 입니다.

클리어타입은 갑자기 혜성처럼 등장한 글꼴 렌더링 기술이 아닙니다. 기존에도 글꼴에 앤티 앨리어싱을 적용하여 글자를 좀 더 미려하게 표현하고 가독성을 높이고 있었습니다. 다만 기존까지는 앤티 앨리어싱이 픽셀 단위에서 이루어졌던 것에 반해 클리어타입은 여기에서 한 단계 더 나아가 서브 픽셀 단위에서 앤티 앨리어싱을 적용하고 있다는 것 입니다.



클리어타입의 원리


모니터는 픽셀의 집합이며 픽셀은 디지털 화면에서 표현할 수 있는 가장 작은 하나의 점이라고 했습니다. 이는 모니터 화면에서 표현되는 모든 내용은 픽셀 단위로 처리된다는 것을 의미합니다. 그런데 픽셀은 다시 R-G-B 라는 세 개의 세로 막대 형태의 서브 픽셀로 나누어 진다고 했죠.

여기에서 인간의 눈과 관련된 과학적인 이야기 하나가 등장합니다. 인간의 눈은 밝기의 변화에는 민감하게 반응하지만 색의 변화에는 그다지 민감하게 반응하지 않는다는 것 입니다. 즉, 색이 아주 미묘하게 바뀌어도 인간의 눈은 그것을 그리 크게 개의치 않는다는 것이죠. 아래의 그림을 보시죠.

다른 배열이지만 사람의 눈이 인식하기에는 같은 흰색으로 보인다.




즉, 모니터에서 표현되는 흰색을 기준으로 보자면 인간의 눈은 R-G-BG-B-R 이나 B-R-G 와 같은 미묘한 배열의 차이를 인식하지 못하고 모두 똑같은 흰색으로 인식한다는 것 입니다.[확대해서 확 눈에 띄는 거지 실제로 인간의 눈이 위 세 가지 배열을 인식하지 못할 정도로 작아지면 인간의 눈은 세 개의 배열이 바뀌는 미묘한 변화가 일어나도 알아채지 못한다는 것 입니다. 근데 밝기가 조금이라도 바뀌면 금방 알아챕니다.] 이러한 인간의 눈이 가지는 특성을 잘만 활용하면 기존의 모니터에서 픽셀의 개수를 늘리지 않아도 가로 픽셀을 3 배로 늘린 것과 같은 효과를 가질 수 있습니다. 아래를 보시죠.




좌측부터 픽셀 단위로 윈도우에서 인식하는 선의 모습이며 가운데가 실제 모니터에서 표시되는 서브 픽셀의 모습, 마지막으로 우측이 이를 인간의 눈이 인식하게 되는 모습입니다. 간단하죠?

그런데 클리어타입을 적용하게 되면 하나의 선이 윈도우에서는 여러가지 형형색색으로 표현이 되는 것을 볼 수 있습니다. 왜 이러한 현상이 발생할까요?


윈도우에서 화면을 표현하는 가장 작은 단위는 픽셀 입니다. 그래서 위의 그림에서 G-B-R(255-255-255) 로 표현되는 값은 사실 윈도우에서는 두 개의 픽셀을 사용하여 R-G-B R-G-B(0-255-255 255-0-0) 로 표현되는 것이죠. 이렇게 두 개의 픽셀을 묶어서 새로운 픽셀을 창조해 내는 것이 바로 클리어타입의 핵심입니다. 이렇게 윈도우에서 표현된 값은 실제 모니터의 서브 픽셀 관점에서 보았을 때 G-B-R(255-255-255) 로 표현이 되고 이를 인간의 눈으로 보았을 때는 R-G-B(255-255-255) 와 마찬가지로 똑같은 흰색으로 인식하는 것이죠. 이를 좀 더 자세하게 표현하면 아래와 같습니다.




그래서 클리어타입이 적용된 문장을 윈도우의 돋보기와 같은 확대 프로그램으로 살펴보면 여러가지 색이 섞여있는 모습을 볼 수 있는 겁니다. 다만 이는 윈도우가 픽셀까지만을 인식하고 처리하기 때문이며 실제 모니터를 성능이 굉장히 좋은(?) 돋보기를 통해 보거나 초접사 촬영을 하여 서브 픽셀까지 확대하여 살펴보면 위에서 설명한 것과 같은 모습을 볼 수 있습니다.

클리어타입이 적용된 문장을 윈도우의 돋보기로 확대해 본 모습




정리하자면 클리어타입은 윈도우에서 정확하게 계산된 색의 배합을 통해 픽셀 단위에서 이루어지던 앤티 앨리어싱을 마치 서브 픽셀 차원에서 이루어지는 것과 같은 효과를 얻는 글꼴 렌더링 기술이라고 할 수 있습니다.







클리어타입 사용의 주의점


RGB 배열 순서의 설정


클리어타입은 이와 같이 서브 픽셀의 배치까지 고려한 글꼴 렌더링 기술입니다. 그렇기 때문에 먼저 RGB 배열이 중요합니다. 일반적인 CRT 나 LCD 모니터는 거의 대부분이 서브 픽셀의 배열로 RGB 방식을 따르고 있습니다.

그러나 간혹 RGB 가 아닌 거꾸로 된 BGR 배열을 사용하는 모니터들도 있습니다. 이러한 모니터는 클리어타입 설정시 해당 모니터가 BGR 배열을 사용함을 알려주어야 합니다. 그렇지 않으면 클리어타입을 적용하기 전 보다 오히려 가독성이 떨어지게 됩니다.

매우 드물지만 BGR 배열의 모니터도 존재한다. 이를 위한 ClearTpye Tuning 의 설정 모습.





표준 LCD 모니터와 기본 해상도의 사용


클리어타입은 LCD 모니터를 기준으로 하여[RGB(또는 BGR) 배열, 완벽한 직사각형의 배열의 사각 픽셀, 세 개의 수직 서브 픽셀] 서브 픽셀까지 고려한 렌더링을 하기 때문에 모니터가 지원하는 정규 해상도에서 최적의 렌더링 결과를 보여줍니다. 모니터에는 모두 해당 모니터에 맞는 기본 해상도가 존재합니다.

클리어타입은 해당 모니터의 권장 값인 기본 해상도의 사용이 중요하다.



만약 이러한 기본 해상도를 무시하고 모니터가 지원하는 해상도보다 크거나 작은 해상도를 사용하게 되면 클리어타입 렌더링의 결과와 실제 모니터에서 표시되는 픽셀의 위치가 맞지 않아 오히려 클리어타입을 적용하기 전보다 글자의 가독성이 나빠질 수 있습니다.[정규 해상도 따위는 우걱우걱 씹어먹은 일부 모니터 또한 마찬가지] 반드시 모니터의 해상도를 기본 해상도로 설정하시길 바랍니다.

CRT 모니터의 경우 LCD 모니터와 기본적인 픽셀의 구조는 같지만 LCD 모니터와는 다르게 고정 픽셀 위치를 가지고 있지 않기 때문에[칼같이 정확한 픽셀의 위치] 클리어타입의 적용 결과가 어느 정도의 효과를 볼 수는 있지만 LCD 와 같이 큰 차이가 느껴지지는 않을 수 있습니다. 마찬가지로 CRT 모니터에서도 기본 해상도를 사용하지 않고 있는 상태에서 클리어타입을 적용한다면 오히려 가독성이 나빠질 수 있습니다.


한 가지 기존의 모니터와는 다른 서브 픽셀의 구조를 가지는 OLED 와 같은 디스플레이를 사용하는 경우에는 클리어타입을 아예 사용할 수 없거나 사용할 수 있더라도 오히려 가독성이 떨어질 수 있습니다.

펜타일 방식의 RGBG 픽셀 구조 - AMOLED. - 픽셀 뻥튀기~!





지금까지 윈도우의 클리어타입에 대해서 알아보았습니다. 이상입니다. ^^



☞ 윈도우 XP 에서 클리어타입 설정하기






※ 이 포스팅은 아래의 내용을 참고로 하여 작성되었습니다. 일부 자료는 마이크로소프트와 위키의 관련 자료들이 참고되기도 했습니다.




: