我正在尝试通过为位图创建画布来渲染文本,而不是在画布上绘制textview,而是将其保存为PNG图像。我有3个频道,其中没有第四个频道alpha。现在我如何将alpha添加到位图。
Bitmap testB;
strLogoImagePath = "storage/sdcard0/as.png";
testB = Bitmap.createBitmap(objTextView.getWidth(), objTextView.getHeight(),Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(testB);
objTextView.layout(0, 0, objTextView.getWidth(), objTextView.getHeight());
objTextView.draw(c);
objTextView.setLayoutParams(rlLayoutParamsCanvas);
FileOutputStream stream = new FileOutputStream(strLogoImagePath);
testB.compress(CompressFormat.PNG, 100, stream);
testB.recycle();
stream.close();
答案 0 :(得分:1)
Bitmap
添加到BitmapDrawable
保持你的方法,只需:
BitmapDrawable(Bitmap bitmap)
或使用此构造函数BitmapDrawable.setAlpha(int alpha)
加载现有的位图。我希望它能解决你的alpha问题。