본문 바로가기
Resource

이미지 다루기

by 하드락 2022. 10. 2.

이미지 다루기

이미지 다루기

 

다음은 안드로이드가 지원하는 이미지 형식들이다.

이미지 형식 필수 확장자 설명
PNG (Portable Network Graphics) .png 권장됨. (무손실)
아홉 조각 확장성 이미지
(9-Patch Stretchable Image)
.9.png 권장됨. (무손실)
JPG (Joint Photographic Experts Group) .jpg, .jpeg 권장되지는 않음. (유손실)
GIF (Graphics Interchange Format) .gif 사용하지 않는 것이 좋음.

 

아홉 조각 확장성 이미지(9-Patch Stretchable Image) PNG 기초한 안드로이드 고유의 비트맵 이미지 형식이다.

전화기 화면 크기는 기기에 따라 다양하다. 만일 화면 크기나 방향마다 개별적인 이미지를 사용해야 한다면

그래픽 디자이너가 많은 시간을 낭비해야 것이다. 따라서, 만들어 하나의 이미지 파일이 화면 크기나 방향

맞게, 또는 텍스트 길이에 맞게 자동으로 확대/축소된다면 아주 편리할 것이다. 안드로이드에서 이런 용도로

사용되는 것이 아홉 조각 확장성 이미지이다. 안드로이드 SDK에는 PNG 파일을 형식의 파일로 변환해 주는

draw9patch라는 도구를 지원한다. (안드로이드 SDK tools 폴더에 있다.)

 

이미지 리소스를 프로젝트에 추가하려면, 이미지 파일을 /res/drawable/ 폴더에 추가하기만 하면 빌드 자동으로

컴파일되어서 응용 프로그램에 포함된다.

 

다음은 /res/drawable/test.png 이미지 파일을 ImageView 위젯에 이미지를 표시하는 예이다.

 

< /res/layout/main.xml >

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
 
    <ImageView
        android:id="@+id/ImageView01"
        android:layout_width="fill_parent"    
        android:layout_height="fill_parent"/>

</LinearLayout>

 

import android.widget.ImageView

...

ImageView myImageView = (ImageView) findViewById(R.id.ImageView01);
myImageView.setImageResource(R.drawable.test);

 

다음은 비트맵 이미지 리소스에 해당하는 BitmapDrawable 객체를 직접 다루는 예이다.

import android.graphics.drawable.BitmapDrawable;

...

BitmapDrawable myImage = (BitmapDrawable) getResources().getDrawable(R.drawable.test);

int iBitmapHeightInPixels = myImage.getIntrinsicHeight();
int iBitmapWidthInPixels = myImage.getIntrinsicWidth();

 

'Resource' 카테고리의 다른 글

XML 파일 다루기  (0) 2022.10.02
메뉴 다루기  (0) 2022.10.02
코드에서 리소스 사용하기  (0) 2022.10.02
단순 표시물 (Drawable)  (0) 2022.10.02
크기 (Dimension)  (0) 2022.10.02

댓글