🛠️ Parse <image> tag as well

* Added <image> tag to Images, which is used to display cover images

Part-of: #69
This commit is contained in:
Acclorite 2025-01-13 13:40:59 +02:00
parent 8f9d849e3e
commit 98a0f30c0c

View file

@ -63,7 +63,7 @@ class DocumentParser @Inject constructor(
element.append("]($link)") element.append("]($link)")
} }
// Image // Image (<img>)
select("img").forEach { element -> select("img").forEach { element ->
val src = element.attr("src") val src = element.attr("src")
.trim() .trim()
@ -81,6 +81,23 @@ class DocumentParser @Inject constructor(
element.append("\n[[$src|$alt]]\n") element.append("\n[[$src|$alt]]\n")
} }
// Image (<image>)
select("image").forEach { element ->
val src = element.attr("xlink:href")
.trim()
.substringAfterLast("/")
.lowercase()
.takeIf {
it.containsVisibleText() && imageEntries?.any { image ->
it == image.name.substringAfterLast('/').lowercase()
} == true
} ?: return@forEach
val alt = src.substringBeforeLast(".")
element.append("\n[[$src|$alt]]\n")
}
}.wholeText().lines().forEach { line -> }.wholeText().lines().forEach { line ->
yield() yield()