diff --git a/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubFileParser.kt b/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubFileParser.kt index 8d2d5201..753a8f50 100644 --- a/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubFileParser.kt +++ b/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubFileParser.kt @@ -61,12 +61,6 @@ class EpubFileParser @Inject constructor() : FileParser { .firstOrNull()?.attr("href") } - if (coverImagePath == null) { - return@withContext - } - - val coverImage = extractCoverImageBitmap(file, coverImagePath) - book = Book( title = title, author = author, @@ -79,7 +73,7 @@ class EpubFileParser @Inject constructor() : FileParser { lastOpened = null, category = Category.entries[0], coverImage = null - ) to coverImage + ) to extractCoverImageBitmap(file, coverImagePath) } } return book @@ -90,7 +84,11 @@ class EpubFileParser @Inject constructor() : FileParser { } } -private fun extractCoverImageBitmap(file: File, coverImagePath: String): Bitmap? { +private fun extractCoverImageBitmap(file: File, coverImagePath: String?): Bitmap? { + if (coverImagePath.isNullOrBlank()) { + return null + } + ZipFile(file).use { zip -> zip.entries().asSequence().forEach { entry -> if (entry.name.endsWith(coverImagePath)) { diff --git a/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubTextParser.kt b/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubTextParser.kt index 3f8290d2..992f1efa 100644 --- a/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubTextParser.kt +++ b/app/src/main/java/ua/acclorite/book_story/data/parser/epub/EpubTextParser.kt @@ -37,12 +37,13 @@ class EpubTextParser @Inject constructor() : TextParser { } val document = Jsoup.parse(content) + document.select("p").append("\n") document .wholeText() .lines() - .forEach { element -> - if (element.isNotBlank()) { - lines.add(element.trim()) + .forEach { line -> + if (line.isNotBlank()) { + lines.add(line.trim()) } } }