Java/Android/応用編/画像合成方法

Top > Java > Android > 応用編 > 画像合成方法

android応用編?

画像合成の方法

androidで、bitmap画像2枚を合成する方法について説明したいと思います。
この仕組みを利用すれば、撮った写真に画像を合成するなんてこともできたりします。

android_gousei.jpg

合成もとの画像は以下のbitmap画像になります。

yamashita.gif
umayahara.gif

ImageMargeActivity?クラス

	public class ImageMargeActivity extends Activity {
	
		@Override
	    public void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        setContentView(R.layout.main);        
	    }
	
		@Override
		protected void onResume() {
			super.onResume();
	
			
		  	Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(), R.drawable.yamashita);
		  	Bitmap bitmap2 = BitmapFactory.decodeResource(getResources(), R.drawable.umayahara);
	
		  	int width = bitmap1.getWidth();
		  	int height = bitmap1.getHeight();
		  
		  	System.out.println(width);
		  	System.out.println(height);
		  	Bitmap newBitmap = Bitmap.createBitmap(width, height*2, Bitmap.Config.ARGB_8888); 
			
		  	Canvas offScreen = new Canvas(newBitmap); 
	    	offScreen.drawBitmap(bitmap1, 0, height, (Paint)null); 
	        offScreen.drawBitmap(bitmap2, 0, 0, (Paint)null); 
	
	        
		  	ImageView image = (ImageView)findViewById(R.id.ImageView01);
		  	image.setImageBitmap(newBitmap);
		}
	    
	    
	}

BitmapFactory?.decodeResource(getResources(), R.drawable.yamashita);
drawableディレクトリ下に置かれた画像をロードします。

★Bitmap newBitmap = Bitmap.createBitmap(width, height*2, Bitmap.Config.ARGB_8888);
ベースとするbitmap画像を新規に作成します。
ここで作る画像の上に、2枚のbitmap画像を載せていきます。drawBitmap

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="wrap_content" 
			android:layout_height="wrap_content"></ImageView>
	</LinearLayout>

こんな感じに画像合成できます。

android開発のご相談は、こちらまでお問い合わせください。

最終更新日: 2009-09-26 (土) 16:24:52 (2998d)

添付ファイル: fileumayahara.gif 1429件 [詳細] fileyamashita.gif 1427件 [詳細] fileandroid_gousei.jpg 1736件 [詳細]

このページをブックマーク:

このページのURL(コピペして利用下さい):

TOP