Uing? Uing!!

[내 맘대로 정리한 안드로이드] dp와 sp: 폰트 크기로 무엇을 써야 하는가? 본문

Android

[내 맘대로 정리한 안드로이드] dp와 sp: 폰트 크기로 무엇을 써야 하는가?

Uing!! 2021. 3. 30. 00:24
반응형

dp, sp, px

안드로이드에서 폰트 크기를 설정할 때 나는 일반적으로 sp를 사용한다.

다만 실제 디자인에서는 상황에 따라 sp가 아닌 dp, 심지어 px를 사용하는 경우도 있다.

안드로이드 개발자 문서에서는 dp와 sp, px에 대해 이렇게 설명한다.

dp (밀도 독립형 픽셀)

- 화면의 물리적인 밀도에 기반한 추상적인 단위입니다. 이 단위는 160dpi(인치당 도트 수) 화면에 상대적이며 화면에서 1dp는 대략 1px와 같습니다. 더 높은 밀도의 화면에서 실행한다면 1dp를 그리는 데 사용되는 픽셀의 수는 화면의 dpi에 적절한 배율로 확장됩니다. 마찬가지로 더 낮은 밀도 화면에서 실행한다면 1dp에 사용되는 픽셀 수는 축소됩니다. dp 대 픽셀의 비율은 화면 밀도에 따라 달라지지만, 반드시 정비례하는 것은 아닙니다. dp 단위(px 단위 대신)를 사용하는 것은 레이아웃에서 뷰 크기를 다양한 화면 밀도에 따라 적절하게 조절하는 간단한 해결 방법입니다. 즉, 다양한 기기에서 UI 요소의 실제 크기에 일관성을 부여합니다.

sp (배율 독립형 픽셀)

- dp 단위와 같지만, 사용자의 글꼴 크기 환경설정에 의해 확장되기도 합니다. 글꼴 크기를 지정할 때 화면 밀도와 사용자의 환경설정 모두에 따라 조정되도록 이 단위를 사용하는 것이 좋습니다.

px (픽셀)

- 화면의 실제 픽셀에 대응됩니다. 실제 표현은 기기에 따라 다를 수 있으므로 이 측정 단위는 권장되지 않으며 각 기기는 인치당 서로 다른 픽셀 수를 가질 수 있고 화면에서 사용할 수 있는 총 픽셀 수는 더 많거나 적을 수 있습니다.

 

폰트를 사용할 경우에는?

앞에서 알 수 있듯이, 구글에서는 폰트 크기에 sp를 권장하고 있다.

시스템의 글꼴 크기가 반영되어 접근성을 높이기 때문이다.

 

다만 접근성보다 뷰 크기와의 일치감이 우선시되는 경우라면 dp를 사용할 수도 있으므로,

애매하다면 디자이너분의 결정에 따르면 될 듯.

 

반응형
Comments