From 7f59d073cf901a9ba33a0a1cde4ef2af2964b906 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Sun, 7 Jan 2024 22:55:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/model/localBook/EpubFile.kt | 24 +++++++++---------- .../main/res/layout/dialog_content_edit.xml | 1 + 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt b/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt index bce69cdbd..bb3f47ba4 100644 --- a/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt +++ b/app/src/main/java/io/legado/app/model/localBook/EpubFile.kt @@ -176,18 +176,8 @@ class EpubFile(var book: Book) { } //title标签中的内容不需要显示在正文中,去除 elements.select("title").remove() - elements.select("img").forEach { - val src = it.attr("src") - if (src == "cover.jpeg") { - return@forEach - } - val path = chapter.url.substringBeforeLast("/", "") - val absSrc = if (path.isEmpty()) { - src - } else { - StringUtil.collapsePathDots("$path/$src") - } - it.attr("src", absSrc) + elements.select("img[src=\"cover.jpeg\"]").forEachIndexed { i, it -> + if (i > 0) it.remove() } val tag = Book.rubyTag if (book.getDelTag(tag)) { @@ -253,12 +243,20 @@ class EpubFile(var book: Book) { //getElementsMatchingOwnText(chapter.title)?.remove() } } + bodyElement.select("img").forEach { + val src = it.attr("src") + val path = res.href.substringBeforeLast("/", "") + if (path.isNotEmpty()) { + val absSrc = StringUtil.collapsePathDots("$path/$src") + it.attr("src", absSrc) + } + } return bodyElement } private fun getImage(href: String): InputStream? { if (href == "cover.jpeg") return epubBook?.coverImage?.inputStream - val abHref = URLDecoder.decode(href.replace("../", ""), "UTF-8") + val abHref = URLDecoder.decode(href, "UTF-8") return epubBook?.resources?.getByHref(abHref)?.inputStream } diff --git a/app/src/main/res/layout/dialog_content_edit.xml b/app/src/main/res/layout/dialog_content_edit.xml index ad0546d92..7dbbfa9b3 100644 --- a/app/src/main/res/layout/dialog_content_edit.xml +++ b/app/src/main/res/layout/dialog_content_edit.xml @@ -21,6 +21,7 @@ android:layout_width="match_parent" android:layout_height="0dp" android:padding="12dp" + android:importantForAutofill="no" app:layout_constraintTop_toBottomOf="@+id/tool_bar" app:layout_constraintBottom_toBottomOf="parent" />