mirror of
https://github.com/ciromattia/kcc
synced 2025-12-19 20:51:45 +00:00
align preceding pages around pre-joined spreads in landscape (#942)
* refactor spread properties * fix spread alighment backwards * more consistent quotes
This commit is contained in:
@@ -358,63 +358,63 @@ def buildOPF(dstdir, title, filelist, cover=None):
|
|||||||
pageside = "left"
|
pageside = "left"
|
||||||
else:
|
else:
|
||||||
pageside = "right"
|
pageside = "right"
|
||||||
|
|
||||||
|
# initial spread order forwards
|
||||||
|
page_spread_property_list = []
|
||||||
for entry in reflist:
|
for entry in reflist:
|
||||||
if options.righttoleft:
|
if options.righttoleft:
|
||||||
if entry.endswith("-kcc-a"):
|
if entry.endswith("-kcc-a"):
|
||||||
f.write(
|
page_spread_property_list.append("center")
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty("center"))
|
|
||||||
)
|
|
||||||
pageside = "right"
|
pageside = "right"
|
||||||
elif entry.endswith("-kcc-b"):
|
elif entry.endswith("-kcc-b"):
|
||||||
f.write(
|
page_spread_property_list.append("right")
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty("right"))
|
|
||||||
)
|
|
||||||
pageside = "right"
|
pageside = "right"
|
||||||
elif entry.endswith("-kcc-c"):
|
elif entry.endswith("-kcc-c"):
|
||||||
f.write(
|
page_spread_property_list.append("left")
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty("left"))
|
|
||||||
)
|
|
||||||
pageside = "right"
|
pageside = "right"
|
||||||
else:
|
else:
|
||||||
f.write(
|
page_spread_property_list.append(pageside)
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty(pageside))
|
|
||||||
)
|
|
||||||
if pageside == "right":
|
if pageside == "right":
|
||||||
pageside = "left"
|
pageside = "left"
|
||||||
else:
|
else:
|
||||||
pageside = "right"
|
pageside = "right"
|
||||||
else:
|
else:
|
||||||
if entry.endswith("-kcc-a"):
|
if entry.endswith("-kcc-a"):
|
||||||
f.write(
|
page_spread_property_list.append("center")
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty("center"))
|
|
||||||
)
|
|
||||||
pageside = "left"
|
pageside = "left"
|
||||||
elif entry.endswith("-kcc-b"):
|
elif entry.endswith("-kcc-b"):
|
||||||
f.write(
|
page_spread_property_list.append("left")
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty("left"))
|
|
||||||
)
|
|
||||||
pageside = "left"
|
pageside = "left"
|
||||||
elif entry.endswith("-kcc-c"):
|
elif entry.endswith("-kcc-c"):
|
||||||
f.write(
|
page_spread_property_list.append("right")
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty("right"))
|
|
||||||
)
|
|
||||||
pageside = "left"
|
pageside = "left"
|
||||||
else:
|
else:
|
||||||
f.write(
|
page_spread_property_list.append(pageside)
|
||||||
"<itemref idref=\"page_%s\" %s/>\n" % (entry,
|
|
||||||
pageSpreadProperty(pageside))
|
|
||||||
)
|
|
||||||
if pageside == "right":
|
if pageside == "right":
|
||||||
pageside = "left"
|
pageside = "left"
|
||||||
else:
|
else:
|
||||||
pageside = "right"
|
pageside = "right"
|
||||||
|
|
||||||
|
# fix spread orders backward
|
||||||
|
spread_seen = False
|
||||||
|
for i in range(len(reflist) -1, -1, -1):
|
||||||
|
entry = reflist[i]
|
||||||
|
if not entry.endswith("-kcc"):
|
||||||
|
spread_seen = True
|
||||||
|
if options.righttoleft:
|
||||||
|
pageside = "left"
|
||||||
|
else:
|
||||||
|
pageside = "right"
|
||||||
|
elif spread_seen:
|
||||||
|
page_spread_property_list[i] = pageside
|
||||||
|
if pageside == "right":
|
||||||
|
pageside = "left"
|
||||||
|
else:
|
||||||
|
pageside = "right"
|
||||||
|
|
||||||
|
for entry, prop in zip(reflist, page_spread_property_list):
|
||||||
|
f.write(f'<itemref idref="page_{entry}" {pageSpreadProperty(prop)}/>\n')
|
||||||
|
|
||||||
f.write("</spine>\n</package>\n")
|
f.write("</spine>\n</package>\n")
|
||||||
f.close()
|
f.close()
|
||||||
os.mkdir(os.path.join(dstdir, 'META-INF'))
|
os.mkdir(os.path.join(dstdir, 'META-INF'))
|
||||||
|
|||||||
Reference in New Issue
Block a user