diff --git a/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt b/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt index d714363b1..43004c0be 100644 --- a/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt +++ b/app/src/main/java/io/legado/app/help/ReplaceAnalyzer.kt @@ -26,7 +26,7 @@ object ReplaceAnalyzer { return runCatching { val replaceRule: ReplaceRule? = GSON.fromJsonObject(json.trim()).getOrNull() - if (replaceRule == null || replaceRule.pattern.isBlank()) { + if (replaceRule == null || replaceRule.pattern.isEmpty()) { val jsonItem = jsonPath.parse(json.trim()) val rule = ReplaceRule() rule.id = jsonItem.readLong("$.id") ?: System.currentTimeMillis() diff --git a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt index 1e68985e9..c45b0a8b0 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt @@ -589,7 +589,7 @@ object ChapterProvider { x = x1 } } - exceed(absStartX, textLine) + exceed(absStartX, textLine, words) } /** @@ -618,7 +618,7 @@ object ChapterProvider { textLine.indentWidth = x } } - exceed(absStartX, textLine) + exceed(absStartX, textLine, words) } fun getStringArrayAndTextWidths( @@ -690,15 +690,14 @@ object ChapterProvider { /** * 超出边界处理 */ - private fun exceed(absStartX: Int, textLine: TextLine) { + private fun exceed(absStartX: Int, textLine: TextLine, words: List) { val visibleEnd = absStartX + visibleWidth - val columns = textLine.columns - val endX = columns.lastOrNull()?.end ?: return + val endX = textLine.columns.lastOrNull()?.end ?: return if (endX > visibleEnd) { - val cc = (endX - visibleEnd) / columns.size - for (i in 0..columns.lastIndex) { + val cc = (endX - visibleEnd) / words.size + for (i in 0..words.lastIndex) { textLine.getColumnReverseAt(i).let { - val py = cc * (columns.size - i) + val py = cc * (words.size - i) it.start = it.start - py it.end = it.end - py }