文章目录
一、测量文本真实边界
二、将文本中心点与给定中心点对齐
一、测量文本真实边界
----
Paint.getTextBounds() 函数原型如下 :
public class Paint {...0, text.length(), rect);
获取的边界值 , 并不是绘制该文本的坐标 , 是使用 Paint 在 Canvas 中绘制的文本的真实占用区域 , 如下图红色矩形框所在的区域 , 与文本的相对坐标...这是根据文本的特性确定的 , 如有的文本时 abcd 类型的 , 下方没有超出基线 , 有的文本属于 jqpy 类型的 , 下方超出基线了 , 还有可能有特殊符号如度数符号 , 百分号等 , 造成了真实文本与绘图区域的差异...;
绘图区域 与 真实文本区域 的差异 , 就导致了 文字绘图 不准确 , 不好定位的问题 ;
二、将文本中心点与给定中心点对齐
----
给定中心点 ( x , y ) ;
绘制文本 , 使得 文本的中心点...与 给定的中心点对齐 ;
根据中心点位置 :
确定绘制文本的左侧位置 : x - (rect.left + rect.right) / 2 , 绘制的文本 , 是下图红色矩形框的位置 , 文本的位置是不确定的