使用drawTextOnPath时如何旋转以直线(无半径)绘制的文本? [英] How to rotate text drawn in a straight line (without radius) when using drawTextOnPath?
本文介绍了使用drawTextOnPath时如何旋转以直线(无半径)绘制的文本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我要旋转画布中的数字,
I want to rotate the numbers in canvas,
这是我尝试过的:
override fun onDraw(canvas: Canvas) {
var i = 0
while (i < rulerHeightInInch) {
val markingPositionYaxis =
screenHeightInPx - (ydpinch * i + topThreshold)
paint.textSize = getPixelValueForDp(18.0f)
val path = Path()
path.reset()
path.moveTo(
(getPixelValueForDp(30f) + paint.textSize),
markingPositionYaxis +17
)
path.lineTo(
(getPixelValueForDp(30f) + paint.textSize),
markingPositionYaxis - (paint.textSize)
)
canvas.drawTextOnPath(nf.format(i / 32), path, 0f, 0f, paint)
}
i++
}
}
第一张图片就是我现在拥有的
First image is what I have right now
第二张图片就是我想要的
Second image is what I want
我不想绘制圆形路径,也不想使用想要从上到下的直线半径
I don't want to draw in circular path or by using radius I want from top to bottom in a straight line
推荐答案
这是我的方法:
canvas.save()
canvas.rotate(180f,(getPixelValueForDp(30f) + paint.textSize),markingPositionYaxis)
canvas.drawTextOnPath(nf.format(i / 32), path, 0f, 0f, paint)
canvas.restore()
这篇关于使用drawTextOnPath时如何旋转以直线(无半径)绘制的文本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文