欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 自定义View实现文字描边

程序员文章站 2022-06-21 19:21:40
Android中实现文字描边的方式有几种,大概有:1、TextView叠加 这种方式灵活性较差2、在TextView的onDraw之前绘制一次相同的文字3、完全自定义,调用两次drawText第二种和第三种方式本质是一样的,都是调用两次drawText方法。代码:if (mTextPaint == null) { mTextPaint = new TextPaint(); mTextPaint.setTextSize(textSize);...

Android中实现文字描边的方式有几种,大概有:

1、TextView叠加 这种方式灵活性较差
2、在TextView的onDraw之前绘制一次相同的文字
3、完全自定义,调用两次drawText

第二种和第三种方式本质是一样的,都是调用两次drawText方法。代码:

 if (mTextPaint == null) { mTextPaint = new TextPaint(); mTextPaint.setTextSize(textSize); mTextPaint.setAntiAlias(true); mTextPaint.setColor(textColor); mTextPaint.setDither(true); mTextPaint.setTextAlign(Paint.Align.CENTER); mTextStrokePaint = new TextPaint(); mTextStrokePaint.setTextSize(textSize); mTextStrokePaint.setAntiAlias(true); mTextStrokePaint.setColor(textStrokeColor); mTextStrokePaint.setStyle(Style.STROKE); mTextStrokePaint.setStrokeWidth(textStrokeWidth); mTextStrokePaint.setDither(true); mTextStrokePaint.setTextAlign(Paint.Align.CENTER); } 
 canvas.drawText(text, 0, baseline, mStrokePaint); canvas.drawText(text, 0, baseline, mPaint); 

其实就是底部绘制一个Stroke类型的文字,在上面绘制一个正常的文字,二者叠加就显示描边效果

效果如下:
Android 自定义View实现文字描边

本文地址:https://blog.csdn.net/qq_16548551/article/details/108150822

相关标签: android canvas