비트맵 작업의 기초

Flash Player 9 이상, Adobe AIR 1.0 이상

디지털 이미지를 사용하여 작업할 때 보통 두 가지의 기본 그래픽 유형인 비트맵 그래픽과 벡터 그래픽을 접하게 됩니다. 래스터 그래픽이라고도 하는 비트맵 그래픽은 사각형 격자 구조로 배열된 작은 정사각형(픽셀)으로 구성되며, 벡터 그래픽은 선, 곡선 및 다각형 등과 같이 수학적으로 생성된 기하학적 형태로 구성됩니다.

비트맵 이미지는 픽셀 단위로 측정된 폭 및 높이와 각 픽셀의 비트 수(각 픽셀에 포함시킬 수 있는 색상 수)로 정의됩니다. RGB 색상 모델을 사용하는 비트맵 이미지의 경우 픽셀은 빨강, 녹색, 파랑이라는 세 개의 바이트로 구성되며 각 바이트는 0 - 255 범위의 값을 가집니다. 픽셀 내에서 바이트가 결합되면 미술가가 혼합한 페인트 색과 유사한 새로운 색상이 만들어집니다. 예를 들어, 바이트 값이 각각 빨강-255, 녹색-102 및 파랑-0일 경우 강렬한 주황색의 픽셀이 만들어집니다.

비트맵 이미지의 품질은 이미지의 해상도와 해당 색상 심도 비트 값을 결합한 결과에 따라 결정됩니다. 해상도는 이미지 내에 포함된 픽셀 수와 관련이 있습니다. 따라서 픽셀 수가 많을수록 해상도가 높아지며 이미지는 선명해집니다. 색상 심도는 한 픽셀에 포함될 수 있는 정보의 양과 관련이 있습니다. 예를 들어, 픽셀당 색상 심도 값이 16비트인 이미지의 경우 색상 심도가 48비트인 이미지와 동일한 색상 수를 표현할 수 없습니다. 따라서 48비트 이미지의 음영은 16비트 이미지보다 훨씬 매끄럽게 표현됩니다.

비트맵 그래픽은 해상도의 영향을 받기 때문에 크기 조절이 원활하게 이루어지지 않습니다. 특히 비트맵 이미지의 크기를 확장하게 되면 이러한 단점이 두드러집니다. 일반적으로 비트맵의 크기를 확장하면 디테일과 품질이 떨어집니다.

비트맵 파일 형식

비트맵 이미지는 일반적인 몇 가지 파일 형식으로 그룹화됩니다. 이러한 형식은 각기 다른 압축 알고리즘 유형을 사용하여 파일 크기를 줄이며 이미지의 최종 목적에 적합한 방식으로 이미지 품질을 최적화합니다. Adobe 런타임에서 지원하는 비트맵 이미지 형식은 BMP, GIF, JPG, PNG 및 TIFF입니다.

BMP

BMP(비트맵) 형식은 Microsoft Windows 운영 체제에서 사용되는 기본 이미지 형식으로, 어떠한 형태의 압축 알고리즘도 사용하지 않으므로 일반적으로 파일 크기가 큽니다.

GIF

GIF(Graphics Interchange Format)는 256 색상(8비트 색상) 이미지를 전송하기 위한 수단으로 CompuServe에서 1987년에 처음 개발된 형식으로, 작은 파일 크기를 제공하므로 웹 기반 이미지에 적합합니다. 그러나 색상 팔레트가 한정되어 있기 때문에 GIF 이미지는 일반적으로 높은 수준의 음영과 색상 그래디언트를 요구하는 사진에는 대체로 적합하지 않습니다. GIF 이미지는 색상을 투명하게 매핑하도록 하는 단일 비트 투명도를 허용합니다. 따라서 웹 페이지 배경색은 투명도가 매핑된 이미지를 통해 표시됩니다.

JPEG

JPEG(Joint Photographic Experts Group)에서 개발한 JPEG(또는 JPG) 이미지 형식은 손실 압축 알고리즘을 사용하여 작은 파일 크기의 24비트 색상 심도를 구현합니다. 손실 압축이란 이미지를 저장할 때마다 이미지의 품질과 데이터는 손실되지만 파일 크기가 줄어드는 것을 의미합니다. JPEG 형식은 무수한 색상을 표시할 수 있기 때문에 사진에 적합합니다. 아울러 이미지에 적용할 압축 수준을 제어할 수 있어 이미지 품질 및 파일 크기를 조작할 수 있습니다.

PNG

PNG(Portable Network Graphics) 형식은 특허받은 GIF 파일 형식에 대한 오픈 소스 대안으로 개발되었으며, PNG는 최대 64비트 색상 심도를 지원하여 천육백만 색상 표현을 가능하게 합니다. PNG는 앞서 설명한 두 형식보다 상대적으로 최근에 개발된 형식이기 때문에 일부 구 버전의 브라우저에서는 PNG 파일을 지원하지 않습니다. JPG와는 다르게 PNG는 손실 없는 압축 방법을 사용하므로 이미지를 저장하더라도 이미지 데이터가 손실되지 않습니다. PNG 파일은 또한 최대 256 레벨의 투명도를 가능하게 하는 알파 투명도를 지원합니다.

TIFF

TIFF(Tagged Image File Format)는 PNG가 도입되기 전에 선택할 수 있었던 형식으로, 플랫폼의 영향을 받지 않습니다. TIFF 형식은 그 종류가 매우 다양해서 모든 버전을 처리할 수 있는 단일 리더가 없다는 단점이 있습니다. 또한 현재 이 형식을 지원하는 웹 브라우저도 없습니다. TIFF에서는 손실 압축이나 무손실 압축을 사용할 수 있으며 CMYK와 같은 장치 고유의 색상 공간을 처리할 수 있습니다.

투명 비트맵 및 불투명 비트맵

GIF 또는 PNG 형식을 사용하는 비트맵 이미지의 경우 각 픽셀에 바이트(알파 채널)를 추가할 수 있습니다. 이 추가 픽셀 바이트는 픽셀의 투명도 값을 나타냅니다.

GIF 이미지는 단일 비트 투명도를 지원하므로 256 색상 팔레트에서 단 한 개의 색상만 투명으로 지정할 수 있습니다. 반면 PNG 이미지의 경우 최대 256 레벨의 투명도를 표현할 수 있습니다. 이 기능은 이미지 또는 텍스트를 배경에 블렌드해야 할 때 특히 유용합니다.

ActionScript 3.0에서는 BitmapData 클래스 내에서 이 추가 투명도 픽셀 바이트를 복제합니다. ActionScript는 PNG 투명도 모델과 유사하게 최대 256 레벨의 투명도를 제공합니다.

중요한 개념 및 용어

비트맵 그래픽과 관련한 중요한 용어가 아래 목록에 정리되어 있습니다.

알파
색상 또는 이미지의 투명도 수준(보다 정확히는 불투명도)입니다. 알파의 양은 흔히 알파 채널 값으로 설명됩니다.

ARGB 색상
각 픽셀의 색상이 빨강, 녹색 및 파랑 색상 값의 혼합인 색상 체계로 투명도가 알파 값으로 지정됩니다.

색상 채널
색상은 일반적으로 몇 가지 기본 색상(컴퓨터 그래픽의 경우 대개 빨강, 녹색, 파랑)의 혼합으로 표현됩니다. 각각의 기본 색상은 색상 채널로 간주되며 각 색상 채널의 색상 양이 서로 혼합되어 최종 색상을 만듭니다.

색상 심도
비트 심도라고도 하며, 각 픽셀에 할당된 컴퓨터 메모리 크기를 나타냅니다. 색상 심도는 이미지에서 표현할 수 있는 색상 수를 결정합니다.

픽셀
비트맵 이미지의 최소 정보 단위로, 본질적으로는 색상 도트를 나타냅니다.

해상도
이미지의 픽셀 크기로, 이미지에 포함된 세부 요소의 세분화 수준을 결정합니다. 해상도는 보통 픽셀 수를 단위로 하는 폭 및 높이로 표시됩니다.

RGB 색상
각 픽셀의 색상이 빨강, 녹색 및 파랑 색상 값의 혼합으로 표현되는 색상 체계를 의미합니다.