用户登录
用户注册

分享至

Android 自定义View实现文字描边

  • 作者: 那晚越女说我?
  • 来源: 51数据库
  • 2021-07-31

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类型的文字,在上面绘制一个正常的文字,二者叠加就显示描边效果

效果如下:

本文地址:http://www.51sjk.com/Upload/Articles/1/0/253/253201_20210627001904278.jpg

软件
前端设计
程序设计
Java相关