我想创建一个带有阴影的文本位图,但我无法获得好的结果。问题是,当我直接绘制文本时,它看起来不错,但是当我将文本绘制到位图,然后绘制位图时,它看起来很难看。创建一个带有阴影的文本位图
代码:
public class MyView extends View {
private Paint paint;
private Bitmap bitmap;
public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public void init(){
paint = new Paint();
paint.setColor(Color.BLACK);
paint.setTextSize(50);
paint.setAntiAlias(true);
paint.setTypeface(Typeface.create("HELVETICA", Typeface.NORMAL));
paint.setShadowLayer(30, 0, 0, Color.BLACK);
bitmap = Bitmap.createBitmap(500, 300, Bitmap.Config.ARGB_8888);
Canvas canvas2 = new Canvas(bitmap);
canvas2.drawText("Dec Use", 100, 100, paint);
}
@Override
protected void onDraw(Canvas canvas){
super.onDraw(canvas);
final boolean useBitmap = true;
if(useBitmap){
canvas.drawBitmap(bitmap, 0, 0, null);
}
else{
canvas.drawText("Dec Use", 100, 100, paint);
}
}
}
当useBitmap
设置为false
,结果看起来像这样
当useBitmap
设置为true
,结果看起来像这样
我错过了什么吗?
有人找到解决办法? – dakshbhatt21