我尝试使用Android中的画布在路径上绘制一些文字。我可以成功地将文本绘制在顶部椭圆线上。我努力做的是确保文本居中。
问题在于,虽然我可以在将文本绘制在椭圆形的顶线之前测量文本,但我无法在之后测量它。这使得估计应该在顶部椭圆线上绘制文本的位置存在问题,因为它总是稍微有些问题。这是因为当我测量最初要绘制的文本时,它是以直线测量的,而不是在椭圆的顶部线上显示。
我尝试过应用setTextAlign(Paint.Align.CENTER)
,但这会让文字得到大约3/4的回合,而不是我想要的。
有没有人有任何想法如何计算绘制文本的点,以便它被绘制为顶部椭圆线的死点或任何可能有帮助的替代方法?
必须使用画布绘制。它不能使用XML TextViews等完成。
感谢。
答案 0 :(得分:0)
您可以查看此库的完成情况:https://github.com/amulyakhare/TextDrawable
它使用相同的方法。但对于多行几乎不可能,这个库和我和其他开发人员试图实现它的问题,我们最终只使用xml(圆形drawable作为linearLayout视图背景和一个textView在其中)。