Horis 2 anni fa
parent
commit
3dd025797e

+ 2 - 1
app/src/main/java/io/legado/app/ui/book/read/page/entities/TextPage.kt

@@ -326,7 +326,8 @@ data class TextPage(
 
     fun render(view: ContentTextView): Boolean {
         if (!isCompleted) return false
-        return canvasRecorder.recordIfNeeded(view.width, height.toInt() + paddingTop) {
+        val height = lines.lastOrNull()?.lineBottom?.toInt() ?: 0
+        return canvasRecorder.recordIfNeeded(view.width, height) {
             drawPage(view, this)
         }
     }

+ 4 - 7
app/src/main/java/io/legado/app/ui/book/read/page/provider/TextChapterLayout.kt

@@ -33,7 +33,6 @@ import kotlinx.coroutines.launch
 import java.util.LinkedList
 import java.util.Locale
 import kotlin.coroutines.coroutineContext
-import kotlin.math.max
 import kotlin.math.roundToInt
 
 class TextChapterLayout(
@@ -447,9 +446,8 @@ class TextChapterLayout(
             val textLine = TextLine(isTitle = isTitle)
             if (durY + textHeight > visibleHeight) {
                 val textPage = pendingTextPage
-                val height = max(durY, textPage.lines.lastOrNull()?.lineBottom ?: 0f)
-                if (textPage.height < height) {
-                    textPage.height = height
+                if (textPage.height < durY) {
+                    textPage.height = durY
                 }
                 if (doublePage && absStartX < viewWidth / 2) {
                     //当前页面左列结束
@@ -532,9 +530,8 @@ class TextChapterLayout(
             val textPage = pendingTextPage
             textPage.addLine(textLine)
             durY += textHeight * lineSpacingExtra
-            val height = max(durY, textPage.lines.lastOrNull()?.lineBottom ?: 0f)
-            if (textPage.height < height) {
-                textPage.height = height
+            if (textPage.height < durY) {
+                textPage.height = durY
             }
         }
         durY += textHeight * paragraphSpacing / 10f