2011-12-06 5 views
0

sdカードから画像を取り込んでキャプションを追加してアプリを作りたかったのですが、また、キャプションを希望どおりに移動し、希望どおりに配置して保存したかったので、これを行うためのアイデアをお勧めします。また、SDカードから既存の画像にキャプションを追加する場合は、これを行うためにデータベースを用意する必要があります。 SDカードに直接保存することもできます。そのため画像を取得してキャプションを追加する

+0

完全にキャプションとは、「イメージに添付されたテキスト」または「イメージ上のテキスト」を意味しますか? – MKJParekh

+0

イメージ上のテキスト...私はイメージに上書きしてメモリに保存したかった – Matthew

+0

私の修正された答えを見てください。あなたが実装する方法についてのいくつかのアイデアを得ることを望みます。:-) – user370305

答えて

0

使用キャンバス(カスタムビュー)..

私は、これはそれで一つのビュー(1枚のキャンバス内の画像)他のビューに(他のキャンバスでのキャプション)を作るための唯一の方法だと思います。だから、これでは、ビューがどのようにキャンバスに描画されるか、そのビューに移動する方法についての知識を完成させる必要があります。キャンバスを使用すると、画面上のビューをスムーズに動かすことができます。

カスタムビューを作成した後、あなたが今、あなたはまた、1つのビットマップにそれらの画像を合成することができ、ビットマップでこれらのビューを保存することができます。..

(ここでCustomeviewsがImageViews、TextViews、のEditTextなどです。)

すべて最高の。 :-)

0

Refer This Answer あなたがのEditTextを入れて、そこに書いて、足す後、あなたが最初にそれが今、あなたはこのようなあなたの元の画像に作成したイメージBMPを追加することができます

Bitmap bmp = Bitmap.createBitmap(mEditText.getDrawingCache()); 

のようなビットマップに変換することができます

コール:

Bitmap combined = combineImages(bgBitmap,bmp); 
public Bitmap combineImages(Bitmap background, Bitmap foreground) { 

     int width = 0, height = 0; 
     Bitmap cs; 

     width = getWindowManager().getDefaultDisplay().getWidth(); 
     height = getWindowManager().getDefaultDisplay().getHeight(); 

     cs = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); 
     Canvas comboImage = new Canvas(cs); 
     background = Bitmap.createScaledBitmap(background, width, height, true); 
     comboImage.drawBitmap(background, 0, 0, null); 
     comboImage.drawBitmap(foreground, matrix, null); 

     return cs; 
    } 
+0

このリンクを参照してください。 –

+0

@ RajaReddyP大丈夫です。 – MKJParekh

0
USe like this. 

    cs = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); 
    Canvas comboImage = new Canvas(cs); 
    background = Bitmap.createScaledBitmap(background, width, height, true); 
    comboImage.drawBitmap(background, 0, 0, null); 
    comboImage.drawText("title", x, y, paint); 
関連する問題