【Android】【自定义View】canvas的方法大全

来源:互联网 发布:淘宝助理收费吗 编辑:程序博客网 时间:2024/06/03 15:26

1.drawText 如何计算正确的绘制文字位置?
例如下图,如何将文字绘制在合理的位置

这里写图片描述

首先: 计算正确的x位置 x = (getWidth() - mTextPaint.measureText(mText)) / 2;
再来:计算正确的y的位置 y =(getHeight() + (fm.descent - fm.ascent)) / 2 - (fm.ascent - fm.top);
这里计算的x,y都是中心位置哦
drawText x是基于 x坐标往右画, y是基于 y坐标往上画
x的计算公式很好理解,控件宽度的一半减去 文字长度的一半 就是中心x的坐标
y的公式和x有点不同, (控件宽度+文本高度)的一半减去 文本的空隙高度(这个高度算是留给一些特殊字符的空间,比如我们拼音的四个声部上面的符号)

0 0