diff --git a/zhuike/src/main/java/com/deiniu/zhuike/utils/PageFactory.java b/zhuike/src/main/java/com/deiniu/zhuike/utils/PageFactory.java index 58655dc..e1735d4 100644 --- a/zhuike/src/main/java/com/deiniu/zhuike/utils/PageFactory.java +++ b/zhuike/src/main/java/com/deiniu/zhuike/utils/PageFactory.java @@ -502,11 +502,11 @@ public class PageFactory { mBookUtil.setPostition(currentPage.getEnd()); TRPage trPage = new TRPage(); - trPage.setBegin(currentPage.getEnd() + 1); - Log.e("begin",currentPage.getEnd() + 1 + ""); + trPage.setBegin(currentPage.getEnd() -1); + Log.e(TAG,"page postion next begin:" + (currentPage.getEnd() + 1) + ""); trPage.setLines(getNextLines()); - Log.e("end",mBookUtil.getPosition() + ""); - trPage.setEnd(mBookUtil.getPosition()); + Log.e(TAG,"page postion next end:" +mBookUtil.getPosition() + ""); + trPage.setEnd(mBookUtil.getPosition()-1); return trPage; } @@ -515,9 +515,9 @@ public class PageFactory { TRPage trPage = new TRPage(); trPage.setEnd(mBookUtil.getPosition() - 1); - Log.e("end",mBookUtil.getPosition() - 1 + ""); + Log.e(TAG,"page postion pre end:" + (mBookUtil.getPosition() - 1 )+ ""); trPage.setLines(getPreLines()); - Log.e("begin",mBookUtil.getPosition() + ""); + Log.e(TAG,"page postion pre begin:" +mBookUtil.getPosition() + ""); trPage.setBegin(mBookUtil.getPosition()); return trPage; } @@ -553,6 +553,8 @@ public class PageFactory { width = 0; // height += paragraphSpace; if (lines.size() == mLineCount){ + Log.e(TAG,String.format("lines count limit a %s,lines size %s",mLineCount,lines.size())); + line =""; break; } } @@ -562,6 +564,11 @@ public class PageFactory { if (width > mVisibleWidth) { width = widthChar; lines.add(line); + if (lines.size() == mLineCount){ + Log.e(TAG,String.format("lines count limit b %s,lines size %s",mLineCount,lines.size())); + line =""; + break; + } line = word + ""; } else { line += word; @@ -569,12 +576,20 @@ public class PageFactory { } if (lines.size() == mLineCount){ + Log.e(TAG,String.format("lines count limit c %s,lines size %s",mLineCount,lines.size())); if (!line.isEmpty()){ - mBookUtil.setPostition(mBookUtil.getPosition() - 1); + mBookUtil.setPostition(mBookUtil.getPosition() - line.length()-2);// mBookUtil.setPostition(mBookUtil.getPosition() - 1); } break; } } + if (lines.size() == mLineCount) { + Log.e(TAG, String.format("lines count limit d %s,lines size %s", mLineCount, lines.size())); + Log.e(TAG, String.format("lines count limit d %s,line is \n %s", mLineCount, line)); + if (!line.isEmpty()) { + mBookUtil.setPostition(mBookUtil.getPosition() - line.length() - 2);// mBookUtil.setPostition(mBookUtil.getPosition() - 1); + } + } if (!line.isEmpty() && lines.size() < mLineCount){ @@ -586,9 +601,9 @@ public class PageFactory { } // lines.add(line); } - //for (String str : lines){ - // Log.e(TAG,str + " "); - // } + for (String str : lines){ + Log.e(TAG,str + " "); + } return lines; }