У меня есть функция, которая рисует текст на холсте с помощью drawTextOnPath
. Я подсчитал, что все работает отлично, но я хочу нарисовать его определенным образом. В настоящее время смещение вращения текста равно смещению кругов. Я хочу повернуть текст на 90/45 градусов. Но я не могу понять, как это сделать.Как повернуть по горизонтали текст, созданный drawTextonPath в круге?
Пожалуйста, любые идеи.
private void drawLegend(Canvas canvas) {
canvas.save(Canvas.MATRIX_SAVE_FLAG);
canvas.rotate(-228, centerX, centerY);
Path circle = new Path();
double halfCircumference = (radius * 2 * Math.PI) - ((radius * 2 * Math.PI)/8) * 2;
double increments = 5;
for (int i = 0; i <= this.mMaxSpeed; i += increments) {
circle.addCircle(centerX, centerY, radius, Path.Direction.CW);
canvas.drawTextOnPath(String.format("%d", i),
circle,
(float) (i * halfCircumference/this.mMaxSpeed),
-20f,
scalePaint);
}
canvas.restore();
}
Thi is how I wnat it to be displayed
То, как я это сделал, вычисляет положение холста, используя функцию для круга и рисуя текст таким образом. – eski
@eski вы можете быть более конкретным, пожалуйста? Может быть, какой-то пример поможет. – Mikhail