px, in, ,mm, pt, dpi, dp, sp의 차이와 모바일 디바이스 해상도의 이해
각각의 단위가 나타내는 기본적인 크기 정보는 다음과 같습니다.
- px: 화면에서 색상을 표현하는 최소 단위. pixel의 줄임 표현.
- in: 디스플레이 장치 화면의 물리적 크기를 표현하는 단위. 1인치는 2.54cm. inch의 줄임 표현..
- mm: 디스플레이 장치 화면의 물리적 크기를 표현하는 단위.
- pt: point의 줄임 표현. 1/72인치 크기. 인쇄업에서 사용하던 물리적인 글자 크기를 표시하는 표준 단위로 디스플레이 장치에서도 글자 크기를 표현하는데 사용합니다. 72pt는 1인치 크기 글자가 됩니다.
- dpi: Dot Per Inch의 줄임 표현. 1인치에 몇 개의 도트(px)가 들어있는지를 표현. 디스플레이 밀도를 표현하는 단위입니다.
- dp/dip: Density independent Pixels의 축약어로 dp로 주로 사용합니다. 디스플레이 장치의 픽셀 밀도를 기준으로 구분하는 가상의 해상도 단위. 기본 스크린 크기인 160dpi 해상도를 기준으로 상대적인 크기를 표현합니다. 화면 밀도가 변하면 dp-to-pixel 비율도 변하게 됩니다.
- sp: Scale independent Pixels의 축약어. 사용자가 설정한 글자 크기를 기준으로 상대적으로 크기가 정해집니다.
in, mm, pt 단위는 물리적인 절대 크기가 정해져 있습니다. 물리적인 크기 안에 몇 개의 픽셀이 들어가는지를 기준으로 dp, sp 단위가 정해집니다. dp, sp는 단위 크기를 기준으로 픽셀의 밀도를 표시하는 상대적인 단위입니다.
dp와 sp가 모바일 기기의 해상도를 표현하는데 중요하게 사용됩니다. 레티나 디스플레이, 또는 고해상도 모바일 기기(HDPI)와 같은 표현은 모두 dpi를 기준으로 구분하는 dp, 또는 sp와 관련된 표현입니다.
모바일 기기의 디스플레이 크기를 정의할 때는 모바일 기기의 밀도가 중요하게 취급되며, 주로 구글에서 정의한 밀도를 기준으로하는 화면 크기 기준을 사용합니다.
DP
디피(dp)는 "단위 픽셀"을 나타냅니다. 디피는 디스플레이와 같은 디지털 이미지에서 사용되는 크기를 측정하는 단위입니다. 디피 단위는 화면의 해상도와 크기에 따라 상대적으로 변하게 됩니다. 높은 해상도의 디스플레이에서는 디피 값이 작아질 수 있으며, 낮은 해상도의 디스플레이에서는 디피 값이 커질 수 있습니다.
디피(dp)는 안드로이드 운영 체제에서 사용되는 "픽셀 독립적인 단위"로, 디스플레이의 물리적인 크기와 밀도의 상호 관계에서 일관성을 제공합니다. 안드로이드에서는 화면의 크기와 해상도에 따라 픽셀 단위로 크기를 지정하면 화면 크기에 따라 각 픽셀의 크기가 다르게 나타날 수 있습니다. 이를 보완하기 위해 디피를 사용하여 물리적인 크기와 해상도에 상관없이 일관된 크기를 제공하게 됩니다.
예를들어 모바일 디바이스의 기본 해상도인 mdpi가 160dpi에서 1dp는 1픽셀이 됩니다. xhdpi 밀도 비다이스에서 1dp는 가로x세로 2픽셀이 되어 4픽셀이 됩니다.
밀도는 다르지만 1dp의 물리적인 크기는 동일합니다.
화면크기로 구분
다음은 구글에서 안드로이드 기기의 화면 크기를 분류해서 사용하는 기준입니다.
- 소형 화면 : 최소 426dp x 320dp~
- 보통 화면 : 최소 470dp x 320dp~
- 대형 화면 : 최소 640dp x 480dp~
- 초대형 화면 : 최소 960dp x 720dp~
화면 밀도로 구분
dpi(Dot Per Inch)로 표시하는 물리적 화면 공간 안에 있는 픽셀의 개수를 말합니다. 구글의 안드로이드 디바이스는 다음 6가지 밀도 범위중 하나에 속하게 됩니다. 최신 기기들은 hdpi이상의 밀도를 사용합니다.
- ldpi (저밀도) : ~120dpi
- mdpi (중간 밀도) : ~160dpi(기본)
- hdpi (고밀도) : ~240dpi
- xhdpi (초고밀도) ~320dpi
- xxhdpi (초초고밀도) : ~480dpi
- xxxhdpi (초초초고밀도) : ~640dpi