X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/e57b146bf49e38b3bb57615110b27de5b4d1ae69..0563809168073c769e30706d6de37de0afe829bc:/librarian/pdf.py diff --git a/librarian/pdf.py b/librarian/pdf.py index b4edfdb..7aaff10 100644 --- a/librarian/pdf.py +++ b/librarian/pdf.py @@ -27,7 +27,8 @@ from librarian.dcparser import Person from librarian.parser import WLDocument from librarian import ParseError, DCNS, get_resource, OutputFile from librarian import functions -from librarian.cover import WLCover +from librarian.cover import DefaultEbookCover +from .sponsor import sponsor_logo functions.reg_substitute_entities() @@ -204,8 +205,8 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, if cover: if cover is True: - cover = WLCover - bound_cover = cover(book_info) + cover = DefaultEbookCover + 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: @@ -247,14 +248,26 @@ 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 sponsor in book_info.sponsors: + ins = etree.Element("data-sponsor", name=sponsor) + logo = sponsor_logo(sponsor) + if logo: + fname = 'sponsor-%s' % os.path.basename(logo) + shutil.copy(logo, os.path.join(temp, fname)) + ins.set('src', fname) + root.insert(0, ins) + + if book_info.sponsor_note: + root.set("sponsor-note", book_info.sponsor_note) + + texml = document.transform(style) + 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 :)