【发布时间】:2021-08-20 15:56:33
【问题描述】:
我有一些路径和一些文本和具体的油漆,可以通过 drawTextOnPath 方法在画布上绘制它。如何计算路径上的长度?我需要它来计算 textScaleX 值。
【问题讨论】:
标签: android canvas path paint drawtext
我有一些路径和一些文本和具体的油漆,可以通过 drawTextOnPath 方法在画布上绘制它。如何计算路径上的长度?我需要它来计算 textScaleX 值。
【问题讨论】:
标签: android canvas path paint drawtext
override fun onDraw(canvas: Canvas?) {
:
val message = "Hello World!"
val paintText = Paint().apply {
color = Color.BLACK
textSize = 3.0F * pathLength / message.length
}
val advanceWidths = FloatArray(message.length)
paintText.getTextWidths(message, advanceWidths)
val textWidth = advanceWidths.sum()
paintText.textScaleX = pathLength / textWidth
canvas?.drawTextOnPath(message, path, 0.0F, 0.0F, paintText)
}
【讨论】: