X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/2ea20e32dd822ece8a2df9693da42cfdaffcbc72..852a6258b74c3c8dc23b591491eedf74cf86eea5:/librarian/pdf/wl.cls diff --git a/librarian/pdf/wl.cls b/librarian/pdf/wl.cls index 82098ec..88bef12 100644 --- a/librarian/pdf/wl.cls +++ b/librarian/pdf/wl.cls @@ -12,6 +12,7 @@ % a4paper,... - paper size as required by LaTeX % nowlfont - don't use customized WL font +\RequirePackage{fixltx2e} \RequirePackage{setspace} \RequirePackage{type1cm} \DeclareOption{13pt}{% @@ -37,6 +38,63 @@ }% }% } +\DeclareOption{16pt}{% +\AtEndOfClass{% +% font size definitions, similar to ones in /usr/share/texmf-texlive/tex/latex/base/ +\renewcommand\normalsize{% + \@setfontsize\normalsize{16pt}{18pt}% + \abovedisplayskip 15\p@ \@plus3\p@ \@minus7\p@ + \abovedisplayshortskip \z@ \@plus3.5\p@ + \belowdisplayshortskip 8\p@ \@plus4\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI}\normalsize% +\renewcommand\footnotesize{% + \@setfontsize\footnotesize\@xpt\@xiipt + \abovedisplayskip 12\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3.5\p@ + \belowdisplayshortskip 7\p@ \@plus3.5\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 7\p@ \@plus2.5\p@ \@minus2.5\p@ + \parsep 3.5\p@ \@plus2.5\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +}% +}% +} + +\newif\iflargefont +\largefontfalse + +\DeclareOption{26pt}{% +\largefonttrue +\AtEndOfClass{% +% font size definitions, similar to ones in /usr/share/texmf-texlive/tex/latex/base/ +\renewcommand\normalsize{% + \@setfontsize\normalsize{26pt}{31pt}% + \abovedisplayskip 14\p@ \@plus6\p@ \@minus14\p@ + \abovedisplayshortskip \z@ \@plus6\p@ + \belowdisplayshortskip 13\p@ \@plus7\p@ \@minus6\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI}\normalsize% + \setlength{\parindent}{1.5em}% +\renewcommand\footnotesize{% + \@setfontsize\footnotesize{15pt}{20pt} + \abovedisplayskip 20\p@ \@plus4\p@ \@minus10\p@ + \abovedisplayshortskip \z@ \@plus6\p@ + \belowdisplayshortskip 12\p@ \@plus6\p@ \@minus6\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 12\p@ \@plus4\p@ \@minus4\p@ + \parsep 6\p@ \@plus4\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +}% +\renewcommand\LARGE{\@setfontsize\LARGE{41pt}{50pt}}% +\renewcommand\huge{\@setfontsize\huge{49pt}{60pt}}% +}% +} + +% not supported on texlive version on jessie, and has weird side effects in some readers +%% \XeTeXgenerateactualtext=1 %% \DeclareOption{14pt}{\renewcommand{\normalsize}{\AtEndOfClass{\fontsize{14}{17}\selectfont}}} @@ -59,6 +117,15 @@ \newif\ifenablewlfont \enablewlfonttrue \DeclareOption{nowlfont}{\enablewlfontfalse} +\newif\ifshowtoc \showtoctrue +\DeclareOption{notoc}{\showtocfalse} + +%\newif\ifsansfont \sansfontfalse +%\DeclareOption{sansfont}{\sansfonttrue} + +\newif\ifmargins \marginstrue +\DeclareOption{nomargins}{\marginsfalse} + \DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}} \ProcessOptions\relax \LoadClass[a4paper,oneside]{book} @@ -82,6 +149,10 @@ \usepackage{scalefnt} \usepackage[colorlinks=true,linkcolor=black,setpagesize=false,urlcolor=black,xetex]{hyperref} +%\ifsansfont +%\renewcommand{\familydefault}{\sfdefault} +%\fi + \newfontfamily\alien[ SmallCapsFeatures = {Letters={SmallCaps,UppercaseSmallCaps}}, Numbers=OldStyle, @@ -103,6 +174,28 @@ Scale=1.04, LetterSpace=-1.0 ] {JunicodeWL} +%\setmainfont [ +%UprightFont = NotoSerif-Regular, +%ItalicFont = NotoSerif-Italic, +%BoldFont = NotoSerif-Regular, +%BoldItalicFont = NotoSerif-Italic, +%SmallCapsFont = NotoSerif-Regular, +%SmallCapsFeatures = {Letters={SmallCaps,UppercaseSmallCaps}}, +%Scale=1.04, +%LetterSpace=-1.0 +%] {NotoSerif} + +%\setsansfont [ +%UprightFont = NotoSansDisplay-Regular, +%ItalicFont = NotoSansDisplay-Italic, +%BoldFont = NotoSansDisplay-Regular, +%BoldItalicFont = NotoSansDisplay-Italic, +%SmallCapsFont = NotoSansDisplay-Regular, +%SmallCapsFeatures = {Letters={SmallCaps,UppercaseSmallCaps}}, +%Scale=1.04, +%LetterSpace=-1.0 +%] {NotoSansDisplay} + \defaultfontfeatures{ SizeFeatures={ {Size={-10.5}, FakeStretch=1.02, LetterSpace=2.0 }, @@ -142,6 +235,7 @@ Letters={SmallCaps,UppercaseSmallCaps} \usepackage{color} \definecolor{theme}{gray}{.3} +\ifmargins \setlength{\marginparsep}{2em} \setlength{\marginparwidth}{8.5em} \setlength{\oddsidemargin}{0pt} @@ -150,6 +244,14 @@ Letters={SmallCaps,UppercaseSmallCaps} \setlength{\headheight}{0pt} \setlength{\headsep}{0pt} \setlength{\textheight}{24cm} +\else +\addtolength{\oddsidemargin}{-.875in} +\addtolength{\evensidemargin}{-.875in} +\addtolength{\textwidth}{1.75in} + +\addtolength{\topmargin}{-.875in} +\addtolength{\textheight}{1.5in} +\fi \pagestyle{fancy} \fancyhf{} @@ -276,6 +378,11 @@ Letters={SmallCaps,UppercaseSmallCaps} \coverby \fi + \ifdefined\isbn + \vspace{.6em} + \isbn + \fi + \vspace{.6em} \emph{Wesprzyj Wolne Lektury!} @@ -305,7 +412,11 @@ Letters={SmallCaps,UppercaseSmallCaps} \newcommand{\typosubsubsection}[1]{% +\iflargefont +{\textsc{\scalefont{2}#1}} +\else {\textsc{#1}} +\fi } \newcommand{\typosubsection}[1]{% @@ -313,37 +424,70 @@ Letters={SmallCaps,UppercaseSmallCaps} SizeFeatures={ {Size={-10}, Scale=1.2, FakeStretch=1.00, LetterSpace=8.0 }, {Size={10.5-12}, Scale=1.2, FakeStretch=1.00, LetterSpace=8.0 }, - {Size={12-}, FakeStretch=1.0, LetterSpace=8.0 } + {Size={12-}, FakeStretch=2.0, LetterSpace=8.0 } }, Letters={Uppercase} } -\MakeUppercase{#1}} +\iflargefont +\MakeUppercase{\scalefont{2}#1} +\else +\MakeUppercase{#1} +\fi} } \newcommand{\typosection}[1]{% +\iflargefont +{\addfontfeature{FakeStretch=0.96, LetterSpace=-4.0}\emph{\scalefont{4}#1}} +\else {\addfontfeature{FakeStretch=0.96, LetterSpace=-4.0}\emph{\scalefont{2}#1}} +\fi %{\addfontfeature{Scale=2.0, FakeStretch=0.98, LetterSpace=-2.0}\emph{#1}} } +\DeclareRobustCommand\authortoctext[1]{% +{\addvspace{10pt}\nopagebreak\leftskip0em\relax +\rightskip \@tocrmarg\relax +\noindent\itshape#1\par}} + +\newcommand\authortoc[1]{% + \gdef\chapterauthor{#1}% + \addtocontents{toc}{\authortoctext{#1}}} + + \newcommand{\tytul}[1]{% #1% \vspace{1em}% } -\newcommand{\nazwapodutworu}[1]{% +\newcommand{\nazwapodutworu}[2]{% +\vspace{5ex}% \section*{\typosection{#1}}% +\addcontentsline{toc}{section}{#2}% +} + +\newcommand{\nazwanadpodutworu}[2]{% +\authortoc{}% +\nazwapodutworu{#1}{#2}% +\authortoc{}% } \newcommand{\autorutworu}[1]{% \subsection*{\typosubsection{#1}}% } +\newcommand{\autorpodutworu}[1]{% +\vspace{5ex}% +\subsection*{\typosubsection{#1}}% +\authortoc{#1}% +} + \newcommand{\dzielonadrzedne}[1]{% \subsection*{\typosubsubsection{#1}}% } \newcommand{\nazwautworu}[1]{% +\vspace{5ex}% \section*{\typosection{#1}}% } @@ -365,7 +509,8 @@ Letters={Uppercase} \newcommand{\dramatwspolczesny}[1]{#1} \newcommand{\nota}[1]{% -\par{#1}% +\par{\raggedleft \emph{#1}}% +\vspace{5ex}% } \newcommand{\dedykacja}[1]{% @@ -376,6 +521,77 @@ Letters={Uppercase} \end{em}% } +\newlength{\fboxhsep} +\newlength{\fboxvsep} + +\newlength{\fboxtoprule} +\newlength{\fboxbottomrule} +\newlength{\fboxleftrule} +\newlength{\fboxrightrule} + +\ifshowthemes +\setlength{\fboxhsep}{5\fboxsep} +\setlength{\fboxvsep}{20\fboxsep} +\fi + +\setlength{\fboxtoprule}{\fboxrule} +\setlength{\fboxleftrule}{\fboxrule} +\setlength{\fboxrightrule}{\fboxrule} +\setlength{\fboxbottomrule}{\fboxrule} + + + +\def\@frameb@xother#1{% + \@tempdima\fboxtoprule + \advance\@tempdima\fboxvsep + \advance\@tempdima\dp\@tempboxa + \hbox{% + \lower\@tempdima\hbox{% + \vbox{% + \hrule\@height\fboxtoprule + \hbox{% + \vrule\@width\fboxleftrule + #1% + \vbox{% + \vskip\fboxvsep + \box\@tempboxa + \vskip\fboxvsep}% + #1% + \vrule\@width\fboxrightrule}% + \hrule\@height\fboxbottomrule}% + }% + }% +} + + +\long\def\fboxother#1{% + \leavevmode + \setbox\@tempboxa\hbox{% + \color@begingroup + \kern\fboxhsep{#1}\kern\fboxhsep + \color@endgroup}% + \@frameb@xother\relax} + +\newcommand{\myfbox}[3]{% + \begingroup + \setlength{\fboxhsep}{#1} + \setlength{\fboxvsep}{#2} + \fboxother{#3} + + \endgroup +} + +\newcommand{\ramka}[1]{% +\par\vspace{1em}% +\edef\myindent{\the\parindent}% +\noindent\myfbox{1em}{1em}{% +\parbox{\dimexpr \textwidth - 2\fboxhsep - 2\fboxrule\relax}{% +\setlength{\parindent}{\myindent}% +#1% +}}% +\vspace{1em}% +} + \newcommand{\dlugicytat}[1]{% \begin{quotation}% #1% @@ -404,34 +620,43 @@ Letters={Uppercase} } \newcommand{\listaosoba}[1]{% -\item{#1}% +\item[]{#1}% } \newcommand{\kwestia}[1]{% \par{#1}% } -\newcommand{\naglowekakt}[1]{% +\newcommand{\naglowekakt}[2]{% \pagebreak -\subsection*{\typosubsection{#1}}% +\subsection*{\typosubsection{\huge #1}}% +\addcontentsline{toc}{subsection}{#2}% +\vspace{5ex}% } -\newcommand{\naglowekczesc}[1]{% +\newcommand{\naglowekczesc}[2]{% \pagebreak -\subsection*{\typosubsection{#1}}% +\subsection*{\typosubsection{\huge #1}}% +\addcontentsline{toc}{subsection}{#2}% +\vspace{5ex}% } \newcommand{\srodtytul}[1]{% \subsection*{\typosubsection{#1}}% } -\newcommand{\naglowekscena}[1]{% -\subsubsection*{\typosubsubsection{#1}}% +\newcommand{\naglowekscena}[2]{% +\subsubsection*{\typosubsubsection{\LARGE #1}}% +\addcontentsline{toc}{subsubsection}{#2}% +\vspace{5ex}% } -\newcommand{\naglowekrozdzial}[1]{% -\subsubsection*{\typosubsubsection{#1}}% +\newcommand{\naglowekrozdzial}[2]{% +\subsubsection*{\typosubsubsection{\LARGE #1}}% +\addcontentsline{toc}{subsubsection}{#2}% +\vspace{5ex}% } \newcommand{\naglowekosoba}[1]{% -\par{\textsc{#1}}\nopagebreak% +\medskip% +\par{\textsc{\MakeLowercase{#1}}}\nopagebreak% } \newcommand{\naglowekpodrozdzial}[1]{% \vspace{5ex}\par{#1}\nopagebreak% @@ -495,6 +720,9 @@ Letters={Uppercase} \newcommand{\werswciety}[2][1em]{% \Nw\hspace*{#1}#2% } +\newcommand{\wersdoprawej}[1]{% +\Nw\hspace*{\fill}#1% +} \ifshowfootnotes \newcommand{\pa}[1]{\NoCaseChange{\footnote{#1 [przypis autorski]}}} @@ -522,9 +750,17 @@ Letters={Uppercase} \newcommand{\wyroznienie}[1]{% \emph{#1}% } +\newcommand{\indeksdolny}[1]{% +\textsubscript{#1}% +} +\newcommand{\wiekszeodstepy}[1]{% +\spaceskip 3\fontdimen2\font plus 3\fontdimen3\font minus 3\fontdimen4\font \relax% +#1% +\spaceskip \fontdimen2\font plus \fontdimen3\font minus \fontdimen4\font \relax% +} \newcommand{\osoba}[1]{% -#1% +{\scshape \MakeLowercase{#1}}% } \newcommand{\sekcjaswiatlo}{%