PNG
안드로이드 개발을 시작하면서 디자이너가 디자인한 아이콘, 이미지 등을 보통 PNG로 받아왔다.
하지만 해상도에 따라 이미지의 사이즈가 나의 의도와는 다르게 바뀌는 경우가 있었다....
바로 src 에 PNG파일을 그대로 넣어서 사용했는데, 이렇게 하면 위와 같은 문제가 발생했고,
많이 찾아보다가 안드로이드에서 이를 방지하기 위해 drawable 폴더를 dpi값에 따라 나누었다고 한다.
따라서 디자이너가 다양한 안드로이드의 기기들의 크기, dpi, 해상도별
다른 사이즈로 PNG를 제공해야 한다는 단점이 존재했다....
이거 때문에 여태까지 어떤 이미지는 내가 원하는 만큼 잘 나왔지만..
어떤 이미지는 해상도가 많이 깨지는 문제가 발생했다
SVG
png를 사용하지 않고, svg를 사용할 경우에는 디자이너가 따로 이미지를 만들 필요가 없다.
png는 픽셀기반이지만, svg그래픽은 벡터기반으로 되어있다.
따라서 어떤 사이즈로든 자유롭게 사용가능하기 때문에 스타일을 쉽게 수정할 수 있는 장점이 있다.
크기를 줄이든, 늘리든 png 해상도가 깨지거나 하는 문제점이 없다.
또한, svg의 파일사이즈가 png보다 작아 전체 파일의 크기가 작아지고, 시간도 빨라진다는 장점 또한 있다!!
하지만 안드로이드에서 svg파일을 바로 사용하지 못해, xml로 변환하여 사용해야한다!!
PNG SVG 둘 중 뭐가 정답이다! 라고 할 수는 없고, 취향마다 선호하는 형태가 다를 것 같다.
그래도 이미지가 깨지는 문제와 속도 문제를 동시에 해결할 수 있으니
조금 귀찮더라도 나는 svg로 사용해봐야겠다.
'Android > Basic' 카테고리의 다른 글
[Android] Splash 화면 만들기 (0) | 2022.04.24 |
---|---|
[Android] SVG 사용하기 (0) | 2022.04.23 |
[Android] width, height 0dp로 설정하기 (0) | 2022.04.21 |
[Android] ViewPager를 이용한 TabLayout (0) | 2022.04.20 |
[Android] ViewPager 로 Banner 구현 (0) | 2022.04.19 |