2012-04-04 10 views
0

私はテキストをキャプチャして透明なイメージとして保存する必要があるアンドロイドアプリケーションを開発しています。テキストのキャプチャが完了しましたが、透明なpngファイルを作成することは、私が画像ピクセル操作に慣れていないことが原因です。ここで私がこれまで持っていたのは...まず空白のビットマップを作成し、それを白い背景で塗りつぶしてから、ペイントの透明度を0(完全な透明度)に設定し、XORモードを使用してソースビットマップを宛先ビットマップに描画します。しかし、私が見るすべてのアプリは、白い空白の画像です。私が間違ってやっていることや、それを修正する方法を誰かが指摘すると、私はうれしいでしょう。前もって感謝します。ビットマップの部分を透明にする問題

b = Bitmap.createBitmap(tw, th,Bitmap.Config.ARGB_8888); 
Canvas canvas = new Canvas(b); 
Rect dest = new Rect(0,0,b.getWidth(),b.getHeight());    
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); 
paint.setColor(Color.WHITE); 

canvas.drawRect(0, 0, b.getWidth(), b.getHeight(), paint); 
paint.setAlpha(0); 
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.XOR)); 
canvas.drawBitmap(bmp,null,dest,paint); 

答えて

1

あなたが見てきました:How to change a bitmap's opacity? あなたが0よりも大きな何かにアルファチャンネルを設定する必要があるとして、

paint.setAlpha(0); 

は何もしませんように思える...

+0

私が理解しているところでは、値0は完全な透明度を与え、値255は完全な不透明度を与えます。 –

0

使用:

Color.argb(0,0,0,0) 

最初のパラメータはアルファです。透明にするには0に設定します。

関連する問題