Fix faulty 0 based docfragment

This commit is contained in:
jpirnay
2026-02-27 09:51:53 +01:00
parent 0eb17ee9a8
commit 34586d0010
3 changed files with 43 additions and 20 deletions
+2 -2
View File
@@ -146,6 +146,6 @@ CrossPointPosition ProgressMapper::toCrossPoint(const std::shared_ptr<Epub>& epu
std::string ProgressMapper::generateXPath(int spineIndex, int pageNumber, int totalPages) {
// Fallback path when element-level XPath extraction is unavailable.
// Uses 0-based DocFragment indices for KOReader compatibility.
return "/body/DocFragment[" + std::to_string(spineIndex) + "]/body";
// KOReader uses 1-based XPath predicates; spineIndex is 0-based internally.
return "/body/DocFragment[" + std::to_string(spineIndex + 1) + "]/body";
}