#26. WYSIWIG (What You See Is What You Get)의 구현

Windows가 나름대로의 비난을 받아오기는 하였지만 사용자나 개발자를 위하여 편리한 기능을 제공한 부분만큼은 비난할 수가 없을 것입니다. 그런 대표적인 예로 WYSIWIG (What You See Is What You Get), 즉 보이는 그대로 얻을 수 있다라는 말을 알아둘 필요가 있을 것입니다.


WYSIWIG을 위해서 동원된 개념들은 굉장히 많이 있습니다. 기존의 비트맵 폰트에서 트루 타입 폰트로, 기존의 비트맵 이미지에서 벡터 이미지로, 통일된 단일 장치에서의 맵핑 모드 전환 등등… 셀 수 없이 많이 있을 것입니다.


실제로 MFC 프로그래밍을 하면 WYSIWIG의 참된 면모를 맛볼 수가 있습니다. 근간에 강좌했던 Device Context에서의 맵핑 모드 (그리기 단위) 변경을 이용하여 해상도와 무관한 출력을 보여주는 것을 확인하였습니다.


실제로 맵핑 모드라고 하는 것은 굉장히 어려운 그래픽 개념 중에 하나이기 때문에 굉장히 생소하거나 쉽게 이해하기가 어려울 수도 있겠지만 그 나름대로의 독창적인 원리가 있다고 생각하시면 쉽습니다.


맵핑 모드를 변경함을 이르는 것은 곧 지도에서의 축도를 가리키는 이야기입니다. 쉬운 예제를 들어, 1:1000 비율의 지도에서의 5cm와 실사의 5cm는 분명히 다른 것입니다. 하지만 이것을 동일 단위로 맞추어 주는 것이 바로 맵핑 모드의 기초 개요입니다. 화면과 프린터사이의 관계를 알아볼까요?


모니터와 프린터는 Windows에서는 닮은꼴의 Device Context를 사용합니다. 실제로, 모니터 또는 프린터의 컬러 프로필 파일을 서로 공유할 수 있으며 전문적인 그래픽 편집가들은 최상의 컬러 프로필 파일을 프린터와 모니터 양쪽에서 공유해서 사용하도록 설정하고 작업을 합니다. 이런 것이 가능한 이유는 양쪽 장치 모두 닮은꼴의 Device Context를 사용하기 때문입니다. 컬러 프로필이라고 하는 것에 대해서는 후단락에서 설명하겠습니다.


여하간, 이러한 형태로 모니터와 프린터는 닮은꼴의 Device Context를 사용하고 있기에 모니터 DC나 프린터 DC나 수행 가능한 작업은 같다라는 의미입니다. 하지만, 문제점이 있습니다.


모니터의 해상도는 평균 1024 * 768 수준입니다. 하지만 프린터의 해상도는 이보다 배를 초과할 수도 있으며 모니터와 비교가 안되는 해상도를 지닙니다. 이로 인해서 데이터를 전송받아서 표현할 때 모니터에서의 픽셀 사이즈와 프린터에서의 픽셀 사이즈는 해상도 차이 때문에 완전히 다른 크기로 보여지게 됩니다. 이것을 통하여 알 수 있는 점은, 픽셀이라는 단위가 가변적인 단위라는 것입니다.


그렇다면 이 문제를 해결하기 위해서는 어떻게 해야 할까요? 다른 것은 없습니다. 모니터 DC쪽에 픽셀 말고 다른 고정적인 또는 불변적인 단위를 사용하도록 하면 될 것입니다. 예를 들면, 인치나, 피트, 센티미터와 같은 것들이 있겠죠.


모니터 DC에 지정함으로서 프린터 DC에도 자동적으로 지정이 가능한 것은 실제로 MFC에서 미리 코딩해 놓은 부분입니다. 즉, 프로그래머는 뷰 클래스의 OnDraw(CDC* pDC)에서 맵핑 모드만을 변경해 주면 되는 것입니다.


맵핑 모드를 변경한다는 것의 결론은 불변인 고정 단위로서 데이터를 표현한다는 데에 있습니다. 또한, 그 단위에 알맞는 좌표 체계를 사용하고 있다는 점에 그 특징이 있습니다.


그리고 아까전에 언급하였던 컬러 프로필이라는 것에 대해서 설명드리겠습니다.


컬러 프로필이라는 것은 일반적으로 모니터나 프린터 드라이버 디스켓 또는 CD-ROM에 포함되어있는 것으로 좀 더 실사와 가까운 색감을 표현하기 위한 색상 데이터 베이스라고 할 수 있습니다.


컬러 프로필은 해당 장치의 성능과 조율을 이루면서 최적화가 되어있어야 제 구실을 합니다. 만약 올바르지 않거나 전혀 연관성이 없는 컬러 프로필을 적용시킨다면 이는 컬러 프로필을 적용시키지 않은것 보다 훨씬 못할 수도 있음을 주의해야 합니다.


모니터 및 그래픽 카드에 적용할 컬러 프로필을 설정할 수 있는 곳은 디스플레이 속성에서의 고급 설정에서 “색 관리” 탭을 선택하면 추가/제거 할 수 있습니다. 여기서 컬러 프로필을 다중으로 사용할 수도 있습니다.


프린터에 적용할 컬러 프로필은 적용할 프린터의 등록 정보 부분에서 찾을 수가 있습니다. 역시 “색 관리” 탭을 선택하면 나타나게 됩니다.


컬러 프로필을 전문적으로 관리하는 프로그램은 Adobe Photoshop의 응용프로그램으로 설치되는 컬러 프로필 에이전트로, 전문적인 컬러 프로필을 설정할 수 있습니다.

댓글 남기기