X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/3df78775bc9e2e4d861bc0eaa4deadd354dda518..141733d3db8c11f1eb69a9c0195f07c3c2ed3f8f:/librarian/pdf.py diff --git a/librarian/pdf.py b/librarian/pdf.py index af258fc..95883e1 100644 --- a/librarian/pdf.py +++ b/librarian/pdf.py @@ -95,6 +95,17 @@ def fix_hanging(doc): exclude=[DCNS("identifier.url"), DCNS("rights.license")] ) +def fix_tables(doc): + for kol in doc.iter(tag='kol'): + if kol.tail is not None: + if not kol.tail.strip(): + kol.tail = None + for table in doc.iter(tag='tabela'): + if table.get('ramka') == '1' or table.get('ramki') == '1': + table.set('_format', '|' + 'X|' * len(table[0])) + else: + table.set('_format', 'X' * len(table[0])) + def move_motifs_inside(doc): """ moves motifs to be into block elements """ @@ -206,7 +217,7 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, if cover: if cover is True: cover = DefaultEbookCover - bound_cover = cover(book_info) + bound_cover = cover(book_info, width=1200) root.set('data-cover-width', str(bound_cover.width)) root.set('data-cover-height', str(bound_cover.height)) if bound_cover.uses_dc_cover: @@ -230,8 +241,10 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, root.set('customizations', u','.join(customizations)) # add editors info - root.set('editors', u', '.join(sorted( - editor.readable() for editor in document.editors()))) + editors = document.editors() + if editors: + root.set('editors', u', '.join(sorted( + editor.readable() for editor in editors))) if document.book_info.funders: root.set('funders', u', '.join(document.book_info.funders)) if document.book_info.thanks: @@ -243,10 +256,12 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, parse_creator(document.edoc) substitute_hyphens(document.edoc) fix_hanging(document.edoc) + fix_tables(document.edoc) # wl -> TeXML style_filename = get_stylesheet("wl2tex") style = etree.parse(style_filename) + functions.reg_mathml_latex() # TeXML -> LaTeX temp = mkdtemp('-wl2pdf') @@ -267,7 +282,7 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, if cover: with open(os.path.join(temp, 'cover.png'), 'w') as f: - bound_cover.save(f) + bound_cover.save(f, quality=80) del document # no longer needed large object :)