gpt4 book ai didi

java - StaticLayout 获取显示的字符数

转载 作者:搜寻专家 更新时间:2023-11-01 07:55:52 26 4
gpt4 key购买 nike

我写了一个图书阅读器。为了在我的页面上正确显示文本,我需要知道可以显示多少个字符?

TextPaint mTextPaint=new TextPaint();
mTextPaint.setTextSize(16);

StaticLayout mTextLayout = new StaticLayout(newText, mTextPaint, canvas.getWidth() - 20, Alignment.ALIGN_NORMAL, 1.5f, 0.0f, false);
canvas.save();


int x = 10, y = 50;
y += p.ascent() + p.descent();

canvas.translate(x, y);

mTextLayout.draw(canvas);
canvas.restore();

最佳答案

首先您需要获取最后可见的行。您可以使用 Layout.getLineForVertical 方法获取它。之后,您可以使用 Layout.getLineEnd/Layout.getLineVisibleEnd 方法获取行的文本偏移量

示例:

int line = mTextLayout.getLineForVertical(canvas.getHeight()); // position of last visible line
int chars = mTextLayout.getLineEnd(line);

关于java - StaticLayout 获取显示的字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27783587/

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