DrawTextUtils.java 文件源码

java
阅读 19 收藏 0 点赞 0 评论 0

项目:BigApp_Discuz_Android 作者:
/**
 * 得到字符串信息包括行数,页数等信息
 */
public void GetTextIfon() {
    char ch;
    int w = 0;
    int istart = 0;
    FontMetrics fm = mPaint.getFontMetrics();// 得到系统默认字体属性
    mFontHeight = (int) (Math.ceil(fm.descent - fm.top) + 2);// 获得字体高度
    mPageLineNum = mTextHeight / mFontHeight;// 获得行数
    int count = this.mStrText.length();
    for (int i = 0; i < count; i++) {
        ch = this.mStrText.charAt(i);
        float[] widths = new float[1];
        String str = String.valueOf(ch);
        mPaint.getTextWidths(str, widths);
        if (ch == '\n') {//原为\n
            mRealLine++;// 真实的行数加一
            mString.addElement(this.mStrText.substring(istart, i));
            istart = i + 1;
            w = 0;
        } else {
            w += (int) Math.ceil(widths[0]);
            if (w > this.mTextWidth) {
                mRealLine++;// 真实的行数加一
                mString.addElement(this.mStrText.substring(istart, i));
                istart = i;
                i--;
                w = 0;
            } else {
                if (i == count - 1) {
                    mRealLine++;// 真实的行数加一
                    mString.addElement(this.mStrText.substring(istart,
                            count));
                }
            }
        }
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号