From 5329a22cd6643da657dd24546b382ada9e048b68 Mon Sep 17 00:00:00 2001 From: Radek Czajka Date: Tue, 28 Dec 2010 14:52:18 +0100 Subject: [PATCH] add some links and rights info in header, use scalefont for prettier footnote links --- librarian/pdf.py | 12 +++++++++--- librarian/pdf/wl.sty | 26 +++++++++++++++++++++----- librarian/xslt/wl2tex.xslt | 9 ++++++++- 3 files changed, 38 insertions(+), 9 deletions(-) diff --git a/librarian/pdf.py b/librarian/pdf.py index 5debb68..af68a1b 100644 --- a/librarian/pdf.py +++ b/librarian/pdf.py @@ -36,7 +36,7 @@ STYLESHEETS = { } -def insert_tags(doc, split_re, tagname): +def insert_tags(doc, split_re, tagname, exclude=None): """ inserts for every occurence of `split_re' in text nodes in the `doc' tree >>> t = etree.fromstring('A-B-CX-Y-Z'); @@ -46,6 +46,8 @@ def insert_tags(doc, split_re, tagname): """ for elem in doc.iter(tag=etree.Element): + if exclude and elem.tag in exclude: + continue if elem.text: chunks = split_re.split(elem.text) while len(chunks) > 1: @@ -67,13 +69,17 @@ def insert_tags(doc, split_re, tagname): def substitute_hyphens(doc): insert_tags(doc, re.compile("(?<=[^-\s])-(?=[^-\s])"), - "dywiz") + "dywiz", + exclude=[DCNS("identifier.url"), DCNS("rights.license")] + ) def fix_hanging(doc): insert_tags(doc, re.compile("(?<=\s\w)\s+"), - "nbsp") + "nbsp", + exclude=[DCNS("identifier.url"), DCNS("rights.license")] + ) def move_motifs_inside(doc): diff --git a/librarian/pdf/wl.sty b/librarian/pdf/wl.sty index 579ee7f..f00ed70 100644 --- a/librarian/pdf/wl.sty +++ b/librarian/pdf/wl.sty @@ -8,6 +8,8 @@ \usepackage{xltxtra} \usepackage[overload]{textcase} +\usepackage{scalefnt} +\usepackage[colorlinks=true,linkcolor=black,urlcolor=black]{hyperref} \setmainfont [ %ExternalLocation, @@ -78,6 +80,19 @@ Letters={SmallCaps,UppercaseSmallCaps} \clubpenalty=100000 \widowpenalty=100000 + +% see http://osdir.com/ml/tex.xetex/2005-10/msg00003.html +\newsavebox{\ximagebox}\newlength{\ximageheight} +\newsavebox{\xglyphbox}\newlength{\xglyphheight} +\newcommand{\xbox}[1] +{\savebox{\ximagebox}{#1}\settoheight{\ximageheight}{\usebox {\ximagebox}}% +\savebox{\xglyphbox}{\char32}\settoheight{\xglyphheight}{\usebox {\xglyphbox}}% +\raisebox{\ximageheight}[0pt][0pt]{%\raisebox{-\xglyphheight}[0pt] [0pt]{% +\makebox[0pt][l]{\usebox{\xglyphbox}}}%}% +\usebox{\ximagebox}% +\raisebox{0pt}[0pt][0pt]{\makebox[0pt][r]{\usebox{\xglyphbox}}}} + + \renewcommand{\maketitle}{ { \thispagestyle{empty} @@ -85,18 +100,18 @@ Letters={SmallCaps,UppercaseSmallCaps} \color{theme} \noindent \begin{minipage}[t]{.35\textwidth}\vspace{0pt} - \includegraphics[width=\textwidth]{wl-logo.png} + \href{http://www.wolnelektury.pl}{\xbox{\includegraphics[width=\textwidth]{wl-logo.png}}} \end{minipage} \begin{minipage}[t]{.65\textwidth}\vspace{0pt} \sourceinfo \vspace{.5em} - Wejdź na stronę http://wolnelektury.pl/ i~zobacz, jak wiele możliwości daje interaktywna wersja szkolnej biblioteki - internetowej Wolne Lektury. + Wersja lektury w opracowaniu merytorycznym i krytycznym (przypisy i motywy) + dostępna jest \href{\bookurl}{na stronie Wolnych Lektur}. \vspace{.5em} - Ten utwór nie jest chroniony prawem autorskim i~znajduje się w~domenie publicznej, co oznacza, że możesz go swobodnie wykorzystywać, publikować i~rozpowszechniać. + \rightsinfo \vspace{.6em} @@ -136,7 +151,8 @@ Letters={Uppercase} } \newcommand{\typosection}[1]{% -{\addfontfeature{Scale=2.0, FakeStretch=0.98, LetterSpace=-2.0}\emph{#1}} +{\addfontfeature{FakeStretch=0.96, LetterSpace=-4.0}\emph{\scalefont{2}#1}} +%{\addfontfeature{Scale=2.0, FakeStretch=0.98, LetterSpace=-2.0}\emph{#1}} } \newcommand{\nazwapodutworu}[1]{% diff --git a/librarian/xslt/wl2tex.xslt b/librarian/xslt/wl2tex.xslt index 61b22b0..b0d85fe 100644 --- a/librarian/xslt/wl2tex.xslt +++ b/librarian/xslt/wl2tex.xslt @@ -97,7 +97,14 @@ - \def\sourceinfo{} + \def\sourceinfo{} + \def\bookurl{} + \def\rightsinfo{Ten utwór nie jest chroniony prawem autorskim i~znajduje się w~domenie publicznej, + co oznacza, że możesz go swobodnie wykorzystywać, publikować i~rozpowszechniać.} + + \def\rightsinfo{Ten utwór jest udostepniony na licencji + \href{}{}.} + -- 2.20.1