我是 Android 新手,我编写了以下示例代码。
public class Circle extends View {
Paint paint = new Paint();
Path path = new Path();
private static final String s = "Hello world example";
public Circle(Context context) {
super(context);
paint.setColor(Color.BLACK);
paint.setStyle(Style.STROKE);
paint.setStrokeWidth(2);
paint.setAntiAlias(true);
paint.setTextSize(30);
}
public void onDraw(Canvas c) {
path.addCircle(getWidth()/2, getHeight()/2, 180, Direction.CW);
c.drawTextOnPath(s, path, 0, 10, paint);
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
}
Canvas.drawTextOnPath()
正在显示从右侧开始的文本(我的意思是正 X 轴)。我想从顶部顺时针显示文本。我想更改文本的起始位置。我对 AndroidCanvas.translate()
和Canvas.scale()
. 还是我应该使用Canvas.rotate()
?我已经粘贴了下面的输出,以便清楚地理解我的问题。
我想以这种形式显示输出。