FXL: page-spread-center and spread none

This commit is contained in:
John Factotum
2022-10-29 16:10:56 +00:00
committed by GitHub
parent 602c8381c2
commit 3aad499696
2 changed files with 36 additions and 14 deletions
+11 -3
View File
@@ -567,6 +567,16 @@ class Loader {
const getHTMLFragment = (doc, id) => doc.getElementById(id)
?? doc.querySelector(`[name="${CSS.escape(id)}"]`)
const getPageSpread = properties => {
for (const p of properties) {
if (p === 'page-spread-left' || p === 'rendition:page-spread-left')
return 'left'
if (p === 'page-spread-right' || p === 'rendition:page-spread-right')
return 'right'
if (p === 'rendition:page-spread-center') return 'center'
}
}
export class EPUB {
parser = new DOMParser()
#encryption
@@ -624,9 +634,7 @@ export class EPUB {
size: this.getSize(item.href),
cfi: this.resources.cfis[index],
linear,
forceLeft: properties.includes('page-spread-left'),
forceRight: properties.includes('page-spread-right'),
forceCenter: properties.includes('page-spread-center'),
pageSpread: getPageSpread(properties),
resolveHref: href => resolveURL(href, item.href),
}
}).filter(s => s)