gpt4 book ai didi

android - Canvas 绘制文字方向

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:18:45 26 4
gpt4 key购买 nike

如何让文字竖写?如何将文字旋转90度?单独写每个字母是愚蠢的,但现在,我不知道其他方法。

 Paint paint = new Paint();
public DrawView(Context context, double arr[])
{
super(context);
paint.setColor(Color.BLACK);
}
@Override
public void onDraw(Canvas canvas)
{
canvas.drawText("Test",50, 50, paint);
}

最佳答案

简单地旋转文本(或其他任何内容)很容易:使用 rotate()旋转 Canvas 的方法(之后旋转回来,否则你画的所有东西都会旋转):

canvas.save();
canvas.rotate(90f, 50, 50);
canvas.drawText("Text",50, 50, paint);
canvas.restore();

save()restore() 方法分别保存和恢复 Canvas 的状态。所以其余绘制的元素不会旋转。如果您只想绘制文本,则不需要这两种方法。

如果想把字符串的字符放在一起,需要对每个字符单独处理。首先,您需要获取字体高度,并且在绘制每个字符时,您需要根据该高度反复增加 y 坐标。

int y = 50;
int fontHeight = 12; // I am (currently) too lazy to properly request the fontHeight and it does not matter for this example :P
for(char c: "Text".toCharArray()) {
canvas.drawText(c, 50, y, paint);
y += fontHeight;
}

关于android - Canvas 绘制文字方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14294532/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com