代码片段:方法getBitmap是在其上绘制一个drawText()的位图
public void showImageView() {
imageView.setBitmap(getBitmap("something", getActivity()));
}
public static Bitmap getBitmap(String content, Context context) {
Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(),
R.drawable.kfunsdk_stamp_bg)
.copy(Bitmap.Config.ARGB_4444, true);
int width = bitmap.getWidth();
int height = bitmap.getHeight();
int typeSize = (int) (height / 1.7);
int left = (int) ((width - typeSize * content.length()) / 1.8);
Paint paint = new Paint();
paint.setTextSize(typeSize);
paint.setColor(Color.WHITE);
paint.setTextAlign(Paint.Align.LEFT);
paint.setAntiAlias(true);
paint.setTypeface(Typeface.DEFAULT);
Canvas canvas = new Canvas(bitmap);
canvas.save();
int top = (int) ((height - typeSize) / 2.5) + typeSize;
canvas.drawText(content, left, top, paint);
canvas.restore();
return bitmap;
}
这是在android 4.4结果中。
使用在android 4.3 reuslt中运行的相同代码
答案 0 :(得分:0)
尝试使用替换位图配置
Bitmap.Config.ARGB_8888