X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/17a9ed3b7ef12e0786ddf46bf8a52b1087224762..3aa7d84d301fc2ad67cfb464e6f5acbbafd7511c:/librarian/pdf.py diff --git a/librarian/pdf.py b/librarian/pdf.py index b8aafdb..2d49b61 100644 --- a/librarian/pdf.py +++ b/librarian/pdf.py @@ -198,21 +198,22 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, # Parse XSLT try: + book_info = wldoc.book_info document = load_including_children(wldoc) root = document.edoc.getroot() if cover: if cover is True: cover = WLCover - bound_cover = cover(document.book_info) + bound_cover = cover(book_info) root.set('data-cover-width', str(bound_cover.width)) root.set('data-cover-height', str(bound_cover.height)) if bound_cover.uses_dc_cover: - if document.book_info.cover_by: - root.set('data-cover-by', document.book_info.cover_by) - if document.book_info.cover_source: + if book_info.cover_by: + root.set('data-cover-by', book_info.cover_by) + if book_info.cover_source: root.set('data-cover-source', - document.book_info.cover_source) + book_info.cover_source) if flags: for flag in flags: root.set('flag-' + flag, 'yes') @@ -230,6 +231,8 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, # add editors info root.set('editors', u', '.join(sorted( editor.readable() for editor in document.editors()))) + if document.book_info.funders: + root.set('funders', u', '.join(document.book_info.funders)) # hack the tree move_motifs_inside(document.edoc) @@ -242,11 +245,19 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, style_filename = get_stylesheet("wl2tex") style = etree.parse(style_filename) - texml = document.transform(style) - # TeXML -> LaTeX temp = mkdtemp('-wl2pdf') + for i, sponsor in enumerate(book_info.sponsors): + sponsor_logo = wldoc.sponsor_by_name(sponsor) + fname = 'sponsor%d.png' % i + with open(os.path.join(temp, fname), 'w') as f: + f.write(sponsor_logo.get_string()) + ins = etree.Element("data-sponsor", src=fname) + root.insert(0, ins) + + texml = document.transform(style) + if cover: with open(os.path.join(temp, 'cover.png'), 'w') as f: bound_cover.save(f)