android.graphics.Paint.breakText()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(7.3k)|赞(0)|评价(0)|浏览(484)

本文整理了Java中android.graphics.Paint.breakText()方法的一些代码示例,展示了Paint.breakText()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Paint.breakText()方法的具体详情如下:
包路径:android.graphics.Paint
类名称:Paint
方法名:breakText

Paint.breakText介绍

暂无

代码示例

代码示例来源:origin: smuyyh/BookReader

int paintSize = mPaint.breakText(strParagraph, true, mVisibleWidth, null);
paraLines.add(strParagraph.substring(0, paintSize));
strParagraph = strParagraph.substring(paintSize);

代码示例来源:origin: smuyyh/BookReader

int paintSize = mPaint.breakText(strParagraph, true, mVisibleWidth, null);
lines.add(strParagraph.substring(0, paintSize));
strParagraph = strParagraph.substring(paintSize);

代码示例来源:origin: smuyyh/BookReader

int paintSize = mPaint.breakText(strParagraph, true, mVisibleWidth, null);
lines.add(strParagraph.substring(0, paintSize));
strParagraph = strParagraph.substring(paintSize);

代码示例来源:origin: stackoverflow.com

String textToBeSplit = arbitraryText; // Text you want to split between TextViews
float textView2Width = somehowGetItsWidth; // TextView2's width
float myTextSize = textView2.getTextSize();

Paint paint = new Paint();
paint.setTextSize(myTextSize); // Your text size
int numChars = paint.breakText(textToBeSplit, true, float textView2Width, null);

代码示例来源:origin: stackoverflow.com

int countLineBreaks(final TextView view, final String toMeasure) {

  final Paint paint = textView.getPaint(); // Get the paint used by the TextView
  int startPos = 0;
  int breakCount = 0;
  final int endPos = toMeasure.length();

  // Loop through the string, moving along the number of characters that will
  // fit on a line in the TextView. The number of iterations = the number of line breaks

  while (startPos < endPos) {
    startPos += paint.breakText(toMeasure.substring(startPos, endPos),
                  true,  tv.getWidth(),(float[]) null);
    lineCount++;
  }
  // Line count will now equal the number of line-breaks the string will require
  return lineCount;
}

代码示例来源:origin: bifan-wei/LrcView

private List<String> makeSecureLines(String text, Paint mPaint, float secureLineWidth) {
  List<String> lines = new ArrayList<String>();
  if (!TextUtils.isEmpty(text)) {
    float maxWidth = secureLineWidth;
    int measuredNum = mPaint.breakText(text, true, maxWidth, null);
    lines.add(text.substring(0, measuredNum));
    String leftStr = text.substring(measuredNum);
    while (leftStr.length() > 0) {
      measuredNum = mPaint.breakText(leftStr, true, maxWidth, null);
      if (measuredNum > 0) {
        lines.add(leftStr.substring(0, measuredNum));
      }
      leftStr = leftStr.substring(measuredNum);
    }
  }
  return lines;
}

代码示例来源:origin: stackoverflow.com

Display display = getWindowManager().getDefaultDisplay();
 Point size = new Point();
 display.getSize(size);
 DisplayMetrics metrics = getResources().getDisplayMetrics();
 int width = (int)((float)size.x/metrics.scaledDensity);
 Paint p = new Paint();
 p.setTextSize(60);
 p.setSubpixelText(true);
 endChar = p.breakText(fullText, 0, endText, true, width, null);

代码示例来源:origin: stackoverflow.com

public void splitAndDrawLines(Canvas canvas,String text, int x, int y, Paint textPaint, int width){
  ArrayList<String> lines = new ArrayList<String>();
  String test = text;
  while(!test.isEmpty()){
    int newLength = textPaint.breakText(test, true, canvas.getWidth(), null);
    lines.add(test.substring(0, newLength));
    test = test.substring(newLength);
  }
  Rect bounds = new Rect();
  int yoff = 0;
  for(String line:lines){
    canvas.drawText(line, x, y + yoff, textPaint);
    textPaint.getTextBounds(line, 0, line.length(), bounds);
    yoff += bounds.height();
  }
}

代码示例来源:origin: yuyangXu0222/eBook

private void pageDown() {
  mReadInfo.nextParaIndex += 1;//移动到最后已读的段落
  String string = "";
  List<String> lines = new ArrayList<>();
  int totalLines = 2 * mLineCount + mReadInfo.preResLines.size();
  reset();
  while (lines.size() < totalLines && mReadInfo.nextParaIndex < mParaListSize) {
    string = mParaList.get(mReadInfo.nextParaIndex);
    mReadInfo.nextParaIndex++;
    while (string.length() > 0) {
      //检测一行能够显示多少字
      int size = mPaint.breakText(string, true, mVisibleWidth, null);
      lines.add(string.substring(0, size));
      string = string.substring(size);
    }
  }
  while (lines.size() > totalLines) {
    mReadInfo.isNextRes = true;
    int end = lines.size() - 1;
    mReadInfo.nextResLines.add(0, lines.get(end));
    lines.remove(end);
  }
}

代码示例来源:origin: yuyangXu0222/eBook

private void pageUp() {
  mReadInfo.nextParaIndex -= 1; //移动到最后已读的段落
  String string = "";
  List<String> lines = new ArrayList<>();
  int totalLines = 2 * mLineCount + mReadInfo.nextResLines.size();
  reset();
  while (lines.size() < totalLines && mReadInfo.nextParaIndex >= 0) {
    List<String> paraLines = new ArrayList<>();
    string = mParaList.get(mReadInfo.nextParaIndex);
    mReadInfo.nextParaIndex--;
    while (string.length() > 0) {
      //检测一行能够显示多少字
      int size = mPaint.breakText(string, true, mVisibleWidth, null);
      paraLines.add(string.substring(0, size));
      string = string.substring(size);
    }
    lines.addAll(0, paraLines);
  }
  while (lines.size() > totalLines) {
    mReadInfo.isPreRes = true;
    mReadInfo.preResLines.add(lines.get(0));
    lines.remove(0);
  }
}

代码示例来源:origin: yuyangXu0222/eBook

private List<String> getNextPageLines() {
  String string = "";
  List<String> lines = new ArrayList<>();
  if (mReadInfo.isNextRes) {
    lines.addAll(mReadInfo.nextResLines);
    mReadInfo.nextResLines.clear();
    mReadInfo.isNextRes = false;
  }
  if (mReadInfo.nextParaIndex >= mParaListSize) {
    return lines;
  }
  mCurContent = findContent(mReadInfo.nextParaIndex);
  while (lines.size() < mLineCount && mReadInfo.nextParaIndex < mParaListSize) {
    string = mParaList.get(mReadInfo.nextParaIndex);
    mReadInfo.nextParaIndex++;
    while (string.length() > 0) {
      //检测一行能够显示多少字
      int size = mPaint.breakText(string, true, mVisibleWidth, null);
      lines.add(string.substring(0, size));
      string = string.substring(size);
    }
  }
  while (lines.size() > mLineCount) {
    mReadInfo.isNextRes = true;
    int end = lines.size() - 1;
    mReadInfo.nextResLines.add(0, lines.get(end));
    lines.remove(end);
  }
  return lines;
}

代码示例来源:origin: yuyangXu0222/eBook

int size = mPaint.breakText(string, true, mVisibleWidth, null);

代码示例来源:origin: yuyangXu0222/eBook

int size = mPaint.breakText(string, true, mVisibleWidth, null);
int size = mPaint.breakText(string, true, mVisibleWidth, null);

代码示例来源:origin: stackoverflow.com

lengthBeforeBreak = textToDisplay.length();
chars = textToDisplay.toCharArray();
nextPos = paint.breakText(chars, 0, chars.length, maxWidth, null);
tempText = textToDisplay.substring(0, nextPos);
textToDisplay = textToDisplay.substring(nextPos, textToDisplay.length());

代码示例来源:origin: stackoverflow.com

private void TextMeasure(String text,
             TextView tvl, TextView tvr) {
  int linesPerScreen = tvl.getHeight() / (tvl.getLineHeight() + (int) tvl.getLineSpacingExtra());
  Paint paint = tvl.getPaint();
  int textWidth = paint.breakText(text, 0, text.length(),
      true, tvl.getWidth(), null);
  int totalText = textWidth * linesPerScreen;
  String leftText = text.substring(0, totalText);
  String rightText = text.substring(totalText,
      text.length());
  tvl.setText(leftText);
  tvr.setText(rightText);
}

代码示例来源:origin: CodingBingo/FastReader

int paintSize = mPaint.breakText(paragraphStr, true, mVisibleWidth, null);
paragraphLines.add(paragraphStr.substring(0, paintSize));
paragraphStr = paragraphStr.substring(paintSize);

代码示例来源:origin: CodingBingo/FastReader

int paintSize = mPaint.breakText(paragraphStr, true, mVisibleWidth, null);
lines.add(paragraphStr.substring(0, paintSize));
paragraphStr = paragraphStr.substring(paintSize);

代码示例来源:origin: stackoverflow.com

int end = mText.length();
while (start < end) {
  int len = mPaint.breakText(mText, start, end, true, mWidth,
      null);
  start += len;

代码示例来源:origin: threerings/playn

while (start < end) {
 int count = paint.breakText(ltext, start, end, true, wrap.width, measuredWidth);

代码示例来源:origin: playn/playn

while (start < end) {
 int count = paint.breakText(ltext, start, end, true, wrap.width, measuredWidth);

相关文章