From c163d2e087feb910063cc47a27201c32af146c82 Mon Sep 17 00:00:00 2001
From: bushixuanqi <57338301+bushixuanqi@users.noreply.github.com>
Date: Sun, 18 Jul 2021 20:19:38 +0800
Subject: [PATCH] Update HtmlFormatter.kt
---
.../java/io/legado/app/utils/HtmlFormatter.kt | 52 +++++--------------
1 file changed, 14 insertions(+), 38 deletions(-)
diff --git a/app/src/main/java/io/legado/app/utils/HtmlFormatter.kt b/app/src/main/java/io/legado/app/utils/HtmlFormatter.kt
index 2fa883f4d..46789b13b 100644
--- a/app/src/main/java/io/legado/app/utils/HtmlFormatter.kt
+++ b/app/src/main/java/io/legado/app/utils/HtmlFormatter.kt
@@ -24,8 +24,7 @@ object HtmlFormatter {
html ?: return ""
val keepImgHtml = html.replace(wrapHtmlRegex, "\n")
.replace(notImgHtmlRegex, "")
- .replace("[\\n\\s]+\$|^[\\n\\s]+".toRegex(), "")
- .replace("\\s*\\n+\\s*".toRegex(), "\n")
+ .replace("\\n\\s*\\n".toRegex(), "\n")
var str = StringBuffer()
var endPos = 0
@@ -50,28 +49,20 @@ object HtmlFormatter {
var appendPos0 = 0
val matcher0 = Pattern.compile("]*src *= *\"([^\"]+)\"[^>]*>", Pattern.CASE_INSENSITIVE).matcher(strBefore) //格式化普通图片标签
while (matcher0.find()) {
- val strBefore0 = strBefore.substring(appendPos0, matcher0.start())
- sb.append( if (strBefore0.isBlank()) strBefore0 else strBefore0.replace("\n","\n "))
- sb.append("")
+ sb.append(strBefore.substring(appendPos0, matcher0.start()),"")
appendPos0 = matcher0.end()
}
- strBefore = if (appendPos0 < strBefore.length) strBefore.substring(appendPos0, strBefore.length) else ""
+ strBefore = strBefore.substring(appendPos0, strBefore.length)
}
- sb.append(
- if (strBefore.isBlank()) strBefore else strBefore.replace("\n","\n ") //缩进图片之间的非空白段落
- )
-
- if (pos == 0) {
- val url = matcher.group(1)!!
- val urlMatcher = AnalyzeUrl.paramPattern.matcher(url)
- val find = urlMatcher.find()
- sb.append("")
-
- } else sb.append("")
+ }else NetworkUtils.getAbsoluteURL(redirectUrl,matcher.group(1)!!)
+ }\">")
appendPos = matcher.end()
} while (matcher.find())
@@ -86,7 +77,7 @@ object HtmlFormatter {
}
if (endPos < keepImgHtml.length) {
- str.append( (
+ str.append(
if(hasMatchX){ //处理末尾的普通图片标签
var appendPos0 = 0
val strBefore = keepImgHtml.substring(endPos, keepImgHtml.length)
@@ -94,28 +85,13 @@ object HtmlFormatter {
Pattern.compile("]*src *= *\"([^\"]+)\"[^>]*>", Pattern.CASE_INSENSITIVE)
.matcher(strBefore) //格式化普通图片标签
while (matcher0.find()) {
- val strBefore0 = strBefore.substring(appendPos0, matcher0.start())
- str.append(
- if (strBefore0.isBlank()) strBefore0 else strBefore0.replace(
- "\n",
- "\n "
- )
- )
- str.append(
- ""
- )
+ str.append(strBefore.substring(appendPos0, matcher0.start()),"")
appendPos0 = matcher0.end()
}
- if (appendPos0 < strBefore.length) strBefore.substring( appendPos0, strBefore.length ) else ""
+ strBefore.substring( appendPos0, strBefore.length )
}else keepImgHtml.substring( endPos, keepImgHtml.length )
- ).replace("\n","\n ") ) //缩进图片之后的非空白段落
+ ) //缩进图片之后的非空白段落
}
-
return str.toString()
}
}