From: Marcin Koziej Date: Tue, 18 Sep 2012 15:38:06 +0000 (+0200) Subject: equations X-Git-Url: https://git.mdrn.pl/librarian.git/commitdiff_plain/bf257ff992a110c085a50b3aeb5edb4e88697f62 equations Conflicts: librarian/pdf.py librarian/pdf/wl.cls librarian/pdf/wl2tex.xslt --- diff --git a/librarian/pdf.py b/librarian/pdf.py index ca18f70..0485613 100644 --- a/librarian/pdf.py +++ b/librarian/pdf.py @@ -174,7 +174,8 @@ def package_available(package, args='', verbose=False): def transform(wldoc, verbose=False, save_tex=None, morefloats=None, - cover=None, flags=None, customizations=None): + cover=None, flags=None, customizations=None, + imgdir=""): """ produces a PDF file with XeLaTeX wldoc: a WLDocument @@ -228,7 +229,7 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, style = etree.parse(style_filename) texml = document.transform(style) - + etree.dump(texml.getroot()) # TeXML -> LaTeX temp = mkdtemp('-wl2pdf') @@ -236,6 +237,10 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, with open(os.path.join(temp, 'cover.jpg'), 'w') as f: the_cover.save(f) + for img in document.edoc.findall('//ilustr'): + shutil.copy(os.path.join(imgdir, img.get('src')), temp) + + del document # no longer needed large object :) tex_path = os.path.join(temp, 'doc.tex') @@ -271,6 +276,7 @@ def transform(wldoc, verbose=False, save_tex=None, morefloats=None, return OutputFile.from_filename(output_file.name) except (XMLSyntaxError, XSLTApplyError), e: + print e raise ParseError(e) diff --git a/librarian/pdf/wl.cls b/librarian/pdf/wl.cls index 2ddcc71..be05aa8 100644 --- a/librarian/pdf/wl.cls +++ b/librarian/pdf/wl.cls @@ -571,3 +571,11 @@ Letters={Uppercase} \fi } +\newcommand{\ilustr}[2]{ + +\vspace{1em}% +\begin{center}% +\par{\includegraphics[width=\textwidth]{#1}\\#2}% +\end{center}% +\vspace{1em}% +} diff --git a/librarian/pdf/wl2tex.xslt b/librarian/pdf/wl2tex.xslt index 5b58d61..f9b7ab0 100644 --- a/librarian/pdf/wl2tex.xslt +++ b/librarian/pdf/wl2tex.xslt @@ -362,6 +362,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +