1

イメージの上に文字列を描画しようとしていますが、コードは機能しますが、透明度が得られません。アルファにいくつかの値を使用しましたが、機能しません。

paint.setAlpha(alpha);

透明度の値の範囲や、ここで間違っていることを教えてもらえますか

public static Bitmap drawtext(Bitmap src, String txt,int alpha) {
        int w = src.getWidth();
        int h = src.getHeight();
        Bitmap result = Bitmap.createBitmap(w, h, src.getConfig());
        Canvas canvas = new Canvas(result);
        canvas.drawBitmap(src, 0, 0, null);
        Paint paint = new Paint();
        paint.setAlpha(alpha);
        paint.setColor(Color.RED);
        paint.setTextSize(18);
        paint.setAntiAlias(true);
        paint.setUnderlineText(true);
        canvas.drawText(txt, 20, 25, paint);

        return result;
    }
4

2 に答える 2

4

参照: http://developer.android.com/reference/android/graphics/Paint.html#setColor(int)

setColor は、その呼び出しの前に設定したアルファ値を上書きします。それはうまくいくはずです:

paint.setColor(Color.RED);
paint.setAlpha(alpha);
于 2013-07-05T17:43:03.990 に答える