diff options
author | Norbert Preining <norbert@preining.info> | 2020-11-13 03:00:52 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2020-11-13 03:00:52 +0000 |
commit | 515071ffd355fff10d3aae843e62cb50a012d4f5 (patch) | |
tree | db2031432bbfb7121d6905e1d0f3ac5fe332c869 /macros/latex/contrib/bookcover/bookcover.dtx | |
parent | 6280c0bca943a30d09e92916ab396082f6461c7f (diff) |
CTAN sync 202011130300
Diffstat (limited to 'macros/latex/contrib/bookcover/bookcover.dtx')
-rw-r--r-- | macros/latex/contrib/bookcover/bookcover.dtx | 613 |
1 files changed, 75 insertions, 538 deletions
diff --git a/macros/latex/contrib/bookcover/bookcover.dtx b/macros/latex/contrib/bookcover/bookcover.dtx index 304ad059fe..b9ab7e69cc 100644 --- a/macros/latex/contrib/bookcover/bookcover.dtx +++ b/macros/latex/contrib/bookcover/bookcover.dtx @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2015- by Tibor Tomacs +% Copyright (C) 2015-2020 by Tibor Tomacs % % This file may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.2 @@ -17,11 +17,12 @@ % \iffalse %<*driver> \ProvidesFile{bookcover.dtx} -\newcommand{\eifiledate}{2018/01/21} -\newcommand{\eifilever}{v2.3} +\newcommand{\eifiledate}{2020/11/12} +\newcommand{\eifilever}{v2.4} %</driver> +%<class> %<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01] -%<class>\ProvidesClass{bookcover}[2018/01/21 v2.3 class for book covers and dust jackets] +%<class>\ProvidesClass{bookcover}[2020/11/12 v2.4 class for book covers and dust jackets] % %<*driver> \documentclass{ltxdoc} @@ -130,7 +131,7 @@ % % \section{Loading class} % The class \texttt{bookcover} requires the services of the class \texttt{article} and the following packages: -% \texttt{kvoptions}, \texttt{textpos}, \texttt{geometry}, \texttt{graphicx}, \texttt{calc}, \texttt{ifthen}, \texttt{tikz}, \texttt{fgruler}. +% \texttt{kvoptions}, \texttt{geometry}, \texttt{graphicx}, \texttt{calc}, \texttt{ifthen}, \texttt{tikz}, \texttt{fgruler}. % % \medskip\noindent % Load the class as usual, with @@ -285,7 +286,7 @@ % \begin{commandlst} % \bookcovercomponent{tikz}{!<part>!}{!<tikz code>!} % \end{commandlst} -% The origin of the Ti\emph{k}Z figure is the lower left corner of the \meta{part}. Two rectangle nodes come into being: \commandinline{part} and \commandinline{trimmed part}. (Thank Zunbeltz Izaola for the idea.) +% The origin of the Ti\emph{k}Z figure is the lower left corner of the \meta{part}. Two rectangle nodes come into being: \commandinline{part} and \commandinline{trimmed part}. (Thanks to Zunbeltz Izaola for the idea.) % % \bigskip\noindent\example % \begin{examplelst} @@ -514,16 +515,11 @@ % \end{document} % \end{examplelst} % -% \noindent You can compile this file with \texttt{latex.exe} or \texttt{xelatex.exe}. Using \texttt{pdflatex.exe} or \texttt{lualatex.exe}, write the following code into the preamble: +% \noindent You can compile this file with \texttt{latex} or \texttt{xelatex}. Using \texttt{pdflatex} or \texttt{lualatex}, write the following code into the preamble: % \begin{examplelst} % \usepackage[pdfcrop={-hires}]{auto-pst-pdf} % \end{examplelst} -% In this case, the command to compile this file is the following: -% -% \medskip\texttt{pdflatex -shell-escape filename}\\ -% or -% -% \texttt{lualatex -shell-escape filename} +% In this case, the \texttt{pdflatex} or \texttt{lualatex} must be called with the \texttt{-shell-escape} option. % % \bigskip % \begin{center} @@ -531,115 +527,12 @@ % \fcolorbox{black!50}{white}{\includegraphics[width=\textwidth-.8pt]{figures/barcode}} % \end{center} % -% \newpage\section{Obsolete method} -% -% {\large\bfseries\color{red}The goal of the \emph{obsolete method} is to be compatible with the early versions of the \texttt{bookcover}. It is not recommended to use it in the future, because the method described in the Section~\begin{NoHyper}\ref{sec:mainmethod}\end{NoHyper} is much more flexible!\par} -% -% \subsection{Commands} -% -% \textbf{Background colors} -% \begin{commandlst} -% \setbookcover{bgcolor}{!<background part>!}{!<colors>!} -% \end{commandlst} -% See the \meta{background part} in Subsubsection \ref{subsubsec:background} and the \meta{colors} in the page \pageref{page:color}. -% -% \bigskip\noindent\textbf{Background pictures} -% \begin{commandlst} -% \setbookcover{bgpic}{!<background part>!}{!<picture file>!} -% \end{commandlst} -% See the \meta{background part} in Subsubsection \ref{subsubsec:background}. The picture will be rescaled according to the sizes of the current background part. -% -% \bigskip\noindent\textbf{Background Ti\emph{k}Z figures} -% \begin{commandlst} -% \setbookcover{bgtikz}{!<background part>!}{!<tikz code>!} -% \end{commandlst} -% See the \meta{background part} in Subsubsection \ref{subsubsec:background}. The Ti\emph{k}Z figure will be placed to the upper left corner of the current background part, without resizing. -% Using the option \texttt{bgtikznodes} of the document class: -% -% \begin{itemize} -% \item the origin moves to the lower left corner of the current background part; -% \item two rectangle nodes come into being: \commandinline{part} and \commandinline{trimmed part}. -% \end{itemize} -% -% \noindent The option \texttt{bgtikzclip} of the document class works the same as \texttt{bgtikznodes}, but it clips the current part. -% -% \bigskip\noindent\textbf{First foreground} -% \begin{commandlst} -% \setbookcover{fgfirst}{!<foreground part>!}{!<content>!} -% \end{commandlst} -% See the \meta{foreground part} in Subsubsection \ref{subsubsec:foreground}. The first foreground is the top layer of the book cover (see Subsection \ref{subsec:layers}). -% -% \bigskip\noindent\textbf{Second foreground} -% \begin{commandlst} -% \setbookcover{fgsecond}{!<foreground part>!}{!<content>!} -% \end{commandlst} -% See the \meta{foreground part} in Subsubsection \ref{subsubsec:foreground}. The second foreground is under the first foreground (see Subsection \ref{subsec:layers}). -% -% \bigskip\noindent\textbf{Making book cover} -% \begin{commandlst} -% \makebookcover -% \end{commandlst} -% This command makes the book cover by using the contents of the background and foreground. -% -% \subsection{Parts in the obsolete method} -% \subsubsection{Background parts}\label{subsubsec:background} -% \begin{center} -% \textbf{With flaps}\\*[0pt] -% \includegraphics{figures/background1}\\[2mm] -% \includegraphics{figures/background2}\\[2mm] -% \includegraphics{figures/background3} -% \end{center} -% \begin{center} -% \textbf{Without flaps}\\*[0pt] -% \includegraphics{figures/background4}\\[2mm] -% \includegraphics{figures/background5} -% \end{center} -% -% \subsubsection{Foreground parts}\label{subsubsec:foreground} -% \begin{center} -% \textbf{With flaps}\\*[0pt] -% \includegraphics{figures/foreground1} -% \end{center} -% \begin{center} -% \textbf{Without flaps}\\*[0pt] -% \includegraphics{figures/foreground2} -% \end{center} -% The other name of \texttt{above front} is \texttt{remark}. -% -% \subsection{Layers}\label{subsec:layers} -% In the following table we can see the hierarchy of the layers: -% \begin{center} -% \begin{tabular}{@{}ll@{}c@{}} -% \cline{1-2} -% \multirow{2}*{|fgfirst|} & |above front|, |below front|, |above back|, |below back|& \color{layer}top layer\\ -% & |back|, |front|, |spine|, |front flap|, |back flap| &\color{layer}$\uparrow$\\ -% \cline{1-2} -% |fgsecond| & |back|, |front|, |spine|, |front flap|, |back flap|&\color{layer}$\uparrow$\\ -% \cline{1-2} -% & |back|, |front|, |spine|, |front flap|, |back flap| &\color{layer}$\uparrow$\\ -% |bgtikz| & |whole without flaps| &\color{layer}$\uparrow$\\ -% & |whole| &\color{layer}$\uparrow$\\ -% \cline{1-2} -% & |back|, |front|, |spine|, |front flap|, |back flap| &\color{layer}$\uparrow$\\ -% |bgpic| & |whole without flaps| &\color{layer}$\uparrow$\\ -% & |whole| &\color{layer}$\uparrow$\\ -% \cline{1-2} -% & |back|, |front|, |spine|, |front flap|, |back flap| &\color{layer}$\uparrow$\\ -% |bgcolor| & |whole without flaps| &\color{layer}$\uparrow$\\ -% & |whole| & \color{layer}bottom layer\\ -% \cline{1-2} -% \end{tabular} -% \end{center} -% -% \subsection{Example} -% See the figure in the page \pageref{page:example1}. -% \lstinputlisting[style=examplefile]{bookcover-example-obsoletemethod.tex} -% % \StopEventually{} % % \begin{macrocode} -%% + %% OPTIONS + \RequirePackage{kvoptions} \SetupKeyvalOptions{family=bookcover,prefix=bookcover@} \DeclareVoidOption{10pt}{\PassOptionsToClass{10pt}{article}} @@ -654,28 +547,24 @@ \DeclareStringOption[5mm]{bleedwidth} \DeclareStringOption[red]{markcolor} \DeclareBoolOption[false]{trimmed} -\DeclareBoolOption[false]{bgtikznodes}% for obsolete method -\DeclareBoolOption[false]{bgtikzclip}% for obsolete method \ProcessKeyvalOptions{bookcover} -\ifbookcover@bgtikzclip\bookcover@bgtikznodestrue\fi% for obsolete method %% CLASS AND PACKAGES -%% -%% Don't use 'absolute' option of 'textpos'! It causes problems in some cases: -%% xelatex.exe + pst-barcode -%% pdflatex.exe or lualatex.exe + pst-barcode + auto-pst-pdf -%% + \LoadClass{article} -\RequirePackage{textpos,geometry,graphicx,calc,ifthen,tikz} +\RequirePackage{geometry,graphicx,calc,ifthen,tikz} \RequirePackage[nonefgrulers]{fgruler} %% PAGE STYLE + \pagestyle{empty} %% NEW IF + \newif\if@inbookcoverenv %% USER LENGTHS + \newlength{\coverwidth} \newlength{\coverheight} \newlength{\spinewidth} @@ -685,6 +574,8 @@ \newlength{\bleedwidth} %% INTERNAL LENGTHS + +\newlength{\bookcover@templength@} \newlength{\bookcover@xpos@} \newlength{\bookcover@ypos@} \newlength{\bookcover@partwidth@} @@ -699,6 +590,7 @@ \let\partwidth\bookcover@partwidth@ %% USER LENGTHS SETTING + \setlength{\coverwidth}{\bookcover@coverwidth} \setlength{\coverheight}{\bookcover@coverheight} \setlength{\spinewidth}{\bookcover@spinewidth} @@ -708,41 +600,48 @@ \setlength{\bleedwidth}{\bookcover@bleedwidth} %% PAGE DIMENSIONS SETTING -\geometry{left=0pt,right=0pt,bottom=0pt,top=-1em, - paperwidth=2\marklength+2\bleedwidth+2\coverwidth+2\flapwidth+\spinewidth, - paperheight=2\marklength+2\bleedwidth+\coverheight} + +\geometry{% + margin=0pt, + paperwidth=2\marklength+2\bleedwidth+2\coverwidth+2\flapwidth+\spinewidth, + paperheight=2\marklength+2\bleedwidth+\coverheight} %% NO PARAGRAPH INDENTATION + \setlength{\parindent}{0pt} %% INTERNAL LENGTHS SETTING + \def\bookcover@xpos#1{\setlength{\bookcover@xpos@}{#1}} \def\bookcover@ypos#1{\setlength{\bookcover@ypos@}{#1}} \def\bookcover@partwidth#1{\setlength{\bookcover@partwidth@}{#1}} \def\bookcover@partheight#1{\setlength{\bookcover@partheight@}{#1}} \def\bookcover@tikz@trimmed@part@param#1#2#3#4{% \setlength{\bookcover@tikz@trimmed@part@width@minus}{#1}% - \setlength{\bookcover@tikz@trimmed@part@height@minus}{#2} - \setlength{\bookcover@tikz@trimmed@part@push@right}{#3} + \setlength{\bookcover@tikz@trimmed@part@height@minus}{#2}% + \setlength{\bookcover@tikz@trimmed@part@push@right}{#3}% \setlength{\bookcover@tikz@trimmed@part@push@up}{#4}} -\def\bookcover@bgtikz@trimmed@part@param#1#2{ - \bookcover@tikz@trimmed@part@param{#1}{2\bleedwidth}{#2}{\bleedwidth}}% for obsolete method \let\setpartposx\bookcover@xpos \let\setpartposy\bookcover@ypos \let\setpartwidth\bookcover@partwidth \let\setpartheight\bookcover@partheight \let\settrimmedpart\bookcover@tikz@trimmed@part@param +%% POSBOX + +\newcommand{\bookcover@posbox}[4]{% + \setlength{\bookcover@templength@}{#3}% + \put(#2,-\bookcover@templength@){\parbox[b][0pt][t]{#1}{#4}}} + %% MARKS -\def\bookcover@vmark{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - {\color{\bookcover@markcolor}\rule[0pt]{\markthick}{\marklength}} - \end{textblock*}} -\def\bookcover@hmark{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - {\color{\bookcover@markcolor}\rule[0pt]{\marklength}{\markthick}} - \end{textblock*}} +\def\bookcover@vmark{% + \bookcover@posbox{\bookcover@partwidth@}{\bookcover@xpos@}{\bookcover@ypos@}{% + {\color{\bookcover@markcolor}\rule[0pt]{\markthick}{\marklength}}}} + +\def\bookcover@hmark{% + \bookcover@posbox{\bookcover@partwidth@}{\bookcover@xpos@}{\bookcover@ypos@}{% + {\color{\bookcover@markcolor}\rule[0pt]{\marklength}{\markthick}}}} \def\bookcover@marks{ \bookcover@ypos{0mm} @@ -791,8 +690,9 @@ \bookcover@hmark} %% TRIMMING -\def\bookcover@trimming{ - \begin{textblock*}{\paperwidth}(0mm,0mm) + +\def\bookcover@trimming{% + \bookcover@posbox{\paperwidth}{0mm}{0mm}{% \begin{tikzpicture} \begin{scope}[color=white] \fill(0,0)-- @@ -817,8 +717,7 @@ (\paperwidth-\marklength-\bleedwidth,\marklength+\bleedwidth)-- (\paperwidth-\marklength-\bleedwidth,\paperheight-\marklength-\bleedwidth)-- (\marklength+\bleedwidth,\paperheight-\marklength-\bleedwidth)--cycle; - \end{tikzpicture} - \end{textblock*} + \end{tikzpicture}} \bookcover@ypos{\bleedwidth} \bookcover@partwidth{\markthick} \ifdim\flapwidth>0mm @@ -842,7 +741,21 @@ \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth-.5\markthick} \bookcover@vmark} +%% BOOKCOVER ENVIRONMENT + +\def\bookcover{% + \@inbookcoverenvtrue% + \newpage% + \begin{picture}(\paperwidth,\paperheight)(0,-\paperheight)} + +\def\endbookcover{% + \bookcover@marks% + \ifbookcover@trimmed\bookcover@trimming\fi% + \end{picture}% + \@inbookcoverenvfalse} + %% BOOKCOVER COMPONENT + \long\def\bookcovercomponent#1#2#3{ \if@inbookcoverenv\else \@latexerr{\string\bookcovercomponent\space is not in 'bookcover' environment.}{}\fi @@ -859,25 +772,21 @@ \ifdim\bookcover@partheight@>0mm \csname bookcover@componenttype@#1\endcsname{#3}\fi\fi\fi}}} -%% BOOKCOVER ENVIRONMENT -\def\bookcover{\@inbookcoverenvtrue} -\def\endbookcover{ - \bookcover@marks - \ifbookcover@trimmed\bookcover@trimming\fi - \mbox{}\newpage\@inbookcoverenvfalse} - %% NEW BOOKCOVER PART + \def\newbookcoverpart#1#2{ \@ifundefined{bookcover@part@param@#1}{ \expandafter\def\csname bookcover@part@param@#1\endcsname{#2}} {\@latexerr{Part '#1' already defined.}{}}} %% RENEW BOOKCOVER PART + \def\renewbookcoverpart#1#2{ \@ifundefined{bookcover@part@param@#1}{\@latexerr{Part '#1' undefined.}{}}{ \expandafter\def\csname bookcover@part@param@#1\endcsname{#2}}} %% NEW NAME BOOKCOVER PART + \def\newnamebookcoverpart#1#2{ \@ifundefined{bookcover@part@param@#1}{ \@ifundefined{bookcover@part@param@#2}{\@latexerr{Part '#2' undefined.}{}}{ @@ -886,23 +795,22 @@ {\@latexerr{Part '#1' already defined.}{}}} %% NEW BOOKCOVER COMPONENT TYPE -\def\newbookcovercomponenttype#1#2{ - \@ifundefined{bookcover@componenttype@#1}{ - \long\expandafter\def\csname bookcover@componenttype@#1\endcsname##1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - #2 - \end{textblock*}}} + +\def\newbookcovercomponenttype#1#2{% + \@ifundefined{bookcover@componenttype@#1}{% + \long\expandafter\def\csname bookcover@componenttype@#1\endcsname##1{% + \bookcover@posbox{\bookcover@partwidth@}{\bookcover@xpos@}{\bookcover@ypos@}{#2}}} {\@latexerr{Component type '#1' already defined.}{}}} %% RENEW BOOKCOVER COMPONENT TYPE -\def\renewbookcovercomponenttype#1#2{ - \@ifundefined{bookcover@componenttype@#1}{\@latex@error{Component type '#1' undefined.}{}}{ - \long\expandafter\def\csname bookcover@componenttype@#1\endcsname##1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - #2 - \end{textblock*}}}} + +\def\renewbookcovercomponenttype#1#2{% + \@ifundefined{bookcover@componenttype@#1}{\@latex@error{Component type '#1' undefined.}{}}{% + \long\expandafter\def\csname bookcover@componenttype@#1\endcsname##1{% + \bookcover@posbox{\bookcover@partwidth@}{\bookcover@xpos@}{\bookcover@ypos@}{#2}}}} %% NEW NAME BOOKCOVER COMPONENT TYPE + \def\newnamebookcovercomponenttype#1#2{ \@ifundefined{bookcover@componenttype@#1}{ \@ifundefined{bookcover@componenttype@#2}{\@latexerr{Component type '#2' undefined.}{}}{ @@ -911,6 +819,7 @@ {\@latexerr{Component type '#1' already defined.}{}}} %% COMPONENT TYPES + \newbookcovercomponenttype{color}{ \tikz\fill[#1] (0,0) rectangle (\bookcover@partwidth@,\bookcover@partheight@);} @@ -973,6 +882,7 @@ \squareruler[#1]{lowerright}{\bookcover@rulerwidth@}{\bookcover@rulerheight@}}{}} %% BOOKCOVER PARTS + \newbookcoverpart{bg back flap}{ \ifdim\flapwidth>0mm \bookcover@ypos{\marklength} @@ -1236,379 +1146,6 @@ \bookcover@xpos{\marklength+\bleedwidth} \bookcover@partwidth{2\coverwidth+2\flapwidth+\spinewidth}} -%%%%%%%%%%%%%%%%%%%%% -%% OBSOLETE METHOD %% -%%%%%%%%%%%%%%%%%%%%% - -%% MAIN LAYERS -\def\bookcover@bgcolor#1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - \tikz\fill\expandafter[#1] (0,0) rectangle (\bookcover@partwidth@,\bookcover@partheight@); - \end{textblock*}} - -\def\bookcover@bgpic#1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - \includegraphics[width=\bookcover@partwidth@,height=\bookcover@partheight@]{#1} - \end{textblock*}} - -\def\bookcover@bgtikz#1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - \ifbookcover@bgtikznodes - \begin{tikzpicture}[overlay,yshift=-\bookcover@partheight@] - \begin{scope}[transparent,line width=0pt] - \pgfset{minimum width=\bookcover@partwidth@,minimum height=\bookcover@partheight@} - \pgfnode{rectangle}{south west}{}{current part}{\pgfusepath{draw}}% for v1.1.1 - \pgfnode{rectangle}{south west}{}{part}{\pgfusepath{draw}} - \pgfset{minimum width=\bookcover@partwidth@-\bookcover@tikz@trimmed@part@width@minus, - minimum height=\bookcover@partheight@-\bookcover@tikz@trimmed@part@height@minus} - \pgftransformshift{\pgfpoint{\bookcover@tikz@trimmed@part@push@right} - {\bookcover@tikz@trimmed@part@push@up}} - \pgfnode{rectangle}{south west}{}{current trimmed part}{\pgfusepath{draw}}% for v1.1.1 - \pgfnode{rectangle}{south west}{}{trimmed part}{\pgfusepath{draw}} - \end{scope} - \ifbookcover@bgtikzclip - \clip (part.south west) rectangle (part.north east);\fi - \else\begin{tikzpicture}\fi - #1 - \end{tikzpicture} - \end{textblock*}} - -\def\bookcover@fg#1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - \parbox[t][\bookcover@partheight@][t]{\bookcover@partwidth@}{#1} - \end{textblock*}} - -\def\bookcover@remark#1{ - \begin{textblock*}{\bookcover@partwidth@}(\bookcover@xpos@,\bookcover@ypos@) - \parbox[t][\bookcover@partheight@][c]{\bookcover@partwidth@}{\begin{center}#1\end{center}} - \end{textblock*}} - -%% RESET DATAS -\def\bookcover@reset{ - \def\bookcover@bgcolor@whole{} - \def\bookcover@bgcolor@wholewf{} - \def\bookcover@bgcolor@back{} - \def\bookcover@bgcolor@front{} - \def\bookcover@bgcolor@backflap{} - \def\bookcover@bgcolor@frontflap{} - \def\bookcover@bgcolor@spine{} - \def\bookcover@bgpic@whole{} - \def\bookcover@bgpic@wholewf{} - \def\bookcover@bgpic@back{} - \def\bookcover@bgpic@front{} - \def\bookcover@bgpic@backflap{} - \def\bookcover@bgpic@frontflap{} - \def\bookcover@bgpic@spine{} - \def\bookcover@bgtikz@whole{} - \def\bookcover@bgtikz@wholewf{} - \def\bookcover@bgtikz@back{} - \def\bookcover@bgtikz@front{} - \def\bookcover@bgtikz@backflap{} - \def\bookcover@bgtikz@frontflap{} - \def\bookcover@bgtikz@spine{} - \def\bookcover@fgfirst@back{} - \def\bookcover@fgfirst@front{} - \def\bookcover@fgfirst@spine{} - \def\bookcover@fgfirst@backflap{} - \def\bookcover@fgfirst@frontflap{} - \def\bookcover@fgfirst@abovefront{} - \def\bookcover@fgfirst@belowfront{} - \def\bookcover@fgfirst@aboveback{} - \def\bookcover@fgfirst@belowback{} - \def\bookcover@fgsecond@back{} - \def\bookcover@fgsecond@front{} - \def\bookcover@fgsecond@spine{} - \def\bookcover@fgsecond@backflap{} - \def\bookcover@fgsecond@frontflap{}} -\bookcover@reset - -%% SET BOOKCOVER -\long\def\setbookcover#1#2#3{ - \ifthenelse{\equal{#1}{bgcolor}}{ - \ifthenelse{\equal{#2}{whole}}{\def\bookcover@bgcolor@whole{#3}}{} - \ifthenelse{\equal{#2}{whole without flaps}}{\def\bookcover@bgcolor@wholewf{#3}}{} - \ifthenelse{\equal{#2}{back}}{\def\bookcover@bgcolor@back{#3}}{} - \ifthenelse{\equal{#2}{front}}{\def\bookcover@bgcolor@front{#3}}{} - \ifthenelse{\equal{#2}{back flap}}{\def\bookcover@bgcolor@backflap{#3}}{} - \ifthenelse{\equal{#2}{front flap}}{\def\bookcover@bgcolor@frontflap{#3}}{} - \ifthenelse{\equal{#2}{spine}}{\def\bookcover@bgcolor@spine{#3}}{}}{} - \ifthenelse{\equal{#1}{bgpic}}{ - \ifthenelse{\equal{#2}{whole}}{\def\bookcover@bgpic@whole{#3}}{} - \ifthenelse{\equal{#2}{whole without flaps}}{\def\bookcover@bgpic@wholewf{#3}}{} - \ifthenelse{\equal{#2}{back}}{\def\bookcover@bgpic@back{#3}}{} - \ifthenelse{\equal{#2}{front}}{\def\bookcover@bgpic@front{#3}}{} - \ifthenelse{\equal{#2}{back flap}}{\def\bookcover@bgpic@backflap{#3}}{} - \ifthenelse{\equal{#2}{front flap}}{\def\bookcover@bgpic@frontflap{#3}}{} - \ifthenelse{\equal{#2}{spine}}{\def\bookcover@bgpic@spine{#3}}{}}{} - \ifthenelse{\equal{#1}{bgtikz}}{ - \ifthenelse{\equal{#2}{whole}}{\def\bookcover@bgtikz@whole{#3}}{} - \ifthenelse{\equal{#2}{whole without flaps}}{\def\bookcover@bgtikz@wholewf{#3}}{} - \ifthenelse{\equal{#2}{back}}{\def\bookcover@bgtikz@back{#3}}{} - \ifthenelse{\equal{#2}{front}}{\def\bookcover@bgtikz@front{#3}}{} - \ifthenelse{\equal{#2}{back flap}}{\def\bookcover@bgtikz@backflap{#3}}{} - \ifthenelse{\equal{#2}{front flap}}{\def\bookcover@bgtikz@frontflap{#3}}{} - \ifthenelse{\equal{#2}{spine}}{\def\bookcover@bgtikz@spine{#3}}{}}{} - \ifthenelse{\equal{#1}{fgfirst}}{ - \ifthenelse{\equal{#2}{back}}{\def\bookcover@fgfirst@back{#3}}{} - \ifthenelse{\equal{#2}{front}}{\def\bookcover@fgfirst@front{#3}}{} - \ifthenelse{\equal{#2}{spine}}{\def\bookcover@fgfirst@spine{#3}}{} - \ifthenelse{\equal{#2}{back flap}}{\def\bookcover@fgfirst@backflap{#3}}{} - \ifthenelse{\equal{#2}{front flap}}{\def\bookcover@fgfirst@frontflap{#3}}{} - \ifthenelse{\equal{#2}{remark}}{\def\bookcover@fgfirst@abovefront{#3}}{}% for v1.0 - \ifthenelse{\equal{#2}{above front}}{\def\bookcover@fgfirst@abovefront{#3}}{} - \ifthenelse{\equal{#2}{below front}}{\def\bookcover@fgfirst@belowfront{#3}}{} - \ifthenelse{\equal{#2}{above back}}{\def\bookcover@fgfirst@aboveback{#3}}{} - \ifthenelse{\equal{#2}{below back}}{\def\bookcover@fgfirst@belowback{#3}}{}}{} - \ifthenelse{\equal{#1}{fgsecond}}{ - \ifthenelse{\equal{#2}{back}}{\def\bookcover@fgsecond@back{#3}}{} - \ifthenelse{\equal{#2}{front}}{\def\bookcover@fgsecond@front{#3}}{} - \ifthenelse{\equal{#2}{spine}}{\def\bookcover@fgsecond@spine{#3}}{} - \ifthenelse{\equal{#2}{back flap}}{\def\bookcover@fgsecond@backflap{#3}}{} - \ifthenelse{\equal{#2}{front flap}}{\def\bookcover@fgsecond@frontflap{#3}}{}}{}} - -%% MAKE BOOKCOVER -\def\makebookcover{ -%% background parameters -\bookcover@ypos{\marklength} -\bookcover@partheight{\coverheight+2\bleedwidth} -%% {bgcolor}{whole} -\ifx\bookcover@bgcolor@whole\@empty\else - \bookcover@xpos{\marklength} - \bookcover@partwidth{2\coverwidth+2\bleedwidth+2\flapwidth+\spinewidth} - \bookcover@bgcolor{\bookcover@bgcolor@whole}\fi -%% {bgcolor}{whole without flaps} -\ifx\bookcover@bgcolor@wholewf\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{2\coverwidth+\spinewidth} - \else - \bookcover@xpos{\marklength} - \bookcover@partwidth{2\coverwidth+2\bleedwidth+\spinewidth}\fi - \bookcover@bgcolor{\bookcover@bgcolor@wholewf}\fi -%% {bgcolor}{back flap} -\ifx\bookcover@bgcolor@backflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength} - \bookcover@partwidth{\flapwidth+\bleedwidth} - \bookcover@bgcolor{\bookcover@bgcolor@backflap}\fi\fi -%% {bgcolor}{back} -\ifx\bookcover@bgcolor@back\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{\coverwidth} - \else - \bookcover@xpos{\marklength} - \bookcover@partwidth{\coverwidth+\bleedwidth}\fi - \bookcover@bgcolor{\bookcover@bgcolor@back}\fi -%% {bgcolor}{spine} -\ifx\bookcover@bgcolor@spine\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth} - \bookcover@partwidth{\spinewidth} - \bookcover@bgcolor{\bookcover@bgcolor@spine}\fi -%% {bgcolor}{front} -\ifx\bookcover@bgcolor@front\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth} - \else - \bookcover@xpos{\marklength+\bleedwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth+\bleedwidth}\fi - \bookcover@bgcolor{\bookcover@bgcolor@front}\fi -%% {bgcolor}{front flap} -\ifx\bookcover@bgcolor@frontflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+2\coverwidth+\spinewidth} - \bookcover@partwidth{\flapwidth+\bleedwidth} - \bookcover@bgcolor{\bookcover@bgcolor@frontflap}\fi\fi -%% {bgpic}{whole} -\ifx\bookcover@bgpic@whole\@empty\else - \bookcover@xpos{\marklength} - \bookcover@partwidth{2\coverwidth+2\bleedwidth+2\flapwidth+\spinewidth} - \bookcover@bgpic{\bookcover@bgpic@whole}\fi -%% {bgpic}{whole without flaps} -\ifx\bookcover@bgpic@wholewf\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{2\coverwidth+\spinewidth} - \else - \bookcover@xpos{\marklength} - \bookcover@partwidth{2\coverwidth+2\bleedwidth+\spinewidth}\fi - \bookcover@bgpic{\bookcover@bgpic@wholewf}\fi -%% {bgpic}{back flap} -\ifx\bookcover@bgpic@backflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength} - \bookcover@partwidth{\flapwidth+\bleedwidth} - \bookcover@bgpic{\bookcover@bgpic@backflap}\fi\fi -%% {bgpic}{back} -\ifx\bookcover@bgpic@back\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{\coverwidth} - \else - \bookcover@xpos{\marklength} - \bookcover@partwidth{\coverwidth+\bleedwidth}\fi - \bookcover@bgpic{\bookcover@bgpic@back}\fi -%% {bgpic}{spine} -\ifx\bookcover@bgpic@spine\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth} - \bookcover@partwidth{\spinewidth} - \bookcover@bgpic{\bookcover@bgpic@spine}\fi -%% {bgpic}{front} -\ifx\bookcover@bgpic@front\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth} - \else - \bookcover@xpos{\marklength+\bleedwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth+\bleedwidth}\fi - \bookcover@bgpic{\bookcover@bgpic@front}\fi -%% {bgpic}{front flap} -\ifx\bookcover@bgpic@frontflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+2\coverwidth+\spinewidth} - \bookcover@partwidth{\flapwidth+\bleedwidth} - \bookcover@bgpic{\bookcover@bgpic@frontflap}\fi\fi -%% {bgtikz}{whole} -\ifx\bookcover@bgtikz@whole\@empty\else - \bookcover@xpos{\marklength} - \bookcover@partwidth{2\coverwidth+2\bleedwidth+2\flapwidth+\spinewidth} - \bookcover@bgtikz@trimmed@part@param{2\bleedwidth}{\bleedwidth} - \bookcover@bgtikz{\bookcover@bgtikz@whole}\fi -%% {bgtikz}{whole without flaps} -\ifx\bookcover@bgtikz@wholewf\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{2\coverwidth+\spinewidth} - \bookcover@bgtikz@trimmed@part@param{0pt}{0pt} - \else - \bookcover@xpos{\marklength} - \bookcover@partwidth{2\coverwidth+2\bleedwidth+\spinewidth} - \bookcover@bgtikz@trimmed@part@param{2\bleedwidth}{\bleedwidth}\fi - \bookcover@bgtikz{\bookcover@bgtikz@wholewf}\fi -%% {bgtikz}{back flap} -\ifx\bookcover@bgtikz@backflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength} - \bookcover@partwidth{\flapwidth+\bleedwidth} - \bookcover@bgtikz@trimmed@part@param{\bleedwidth}{\bleedwidth} - \bookcover@bgtikz{\bookcover@bgtikz@backflap}\fi\fi -%% {bgtikz}{back} -\ifx\bookcover@bgtikz@back\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{\coverwidth} - \bookcover@bgtikz@trimmed@part@param{0pt}{0pt} - \else - \bookcover@xpos{\marklength} - \bookcover@partwidth{\coverwidth+\bleedwidth} - \bookcover@bgtikz@trimmed@part@param{\bleedwidth}{\bleedwidth}\fi - \bookcover@bgtikz{\bookcover@bgtikz@back}\fi -%% {bgtikz}{spine} -\ifx\bookcover@bgtikz@spine\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth} - \bookcover@partwidth{\spinewidth} - \bookcover@bgtikz@trimmed@part@param{0pt}{0pt} - \bookcover@bgtikz{\bookcover@bgtikz@spine}\fi -%% {bgtikz}{front} -\ifx\bookcover@bgtikz@front\@empty\else - \ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth} - \bookcover@bgtikz@trimmed@part@param{0pt}{0pt} - \else - \bookcover@xpos{\marklength+\bleedwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth+\bleedwidth} - \bookcover@bgtikz@trimmed@part@param{\bleedwidth}{0pt}\fi - \bookcover@bgtikz{\bookcover@bgtikz@front}\fi -%% {bgtikz}{front flap} -\ifx\bookcover@bgtikz@frontflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+2\coverwidth+\spinewidth} - \bookcover@partwidth{\flapwidth+\bleedwidth} - \bookcover@bgtikz@trimmed@part@param{\bleedwidth}{0pt} - \bookcover@bgtikz{\bookcover@bgtikz@frontflap}\fi\fi -%% foreground parameters -\bookcover@ypos{\marklength+\bleedwidth} -\bookcover@partheight{\coverheight} -%% {fgsecond}{back flap} -\ifx\bookcover@fgsecond@backflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth} - \bookcover@partwidth{\flapwidth} - \bookcover@fg{\bookcover@fgsecond@backflap}\fi\fi -%% {fgsecond}{back} -\ifx\bookcover@fgsecond@back\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{\coverwidth} - \bookcover@fg{\bookcover@fgsecond@back}\fi -%% {fgsecond}{spine} -\ifx\bookcover@fgsecond@spine\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth} - \bookcover@partwidth{\spinewidth} - \bookcover@fg{\bookcover@fgsecond@spine}\fi -%% {fgsecond}{front} -\ifx\bookcover@fgsecond@front\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth} - \bookcover@fg{\bookcover@fgsecond@front}\fi -%% {fgsecond}{front flap} -\ifx\bookcover@fgsecond@frontflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+2\coverwidth+\spinewidth} - \bookcover@partwidth{\flapwidth} - \bookcover@fg{\bookcover@fgsecond@frontflap}\fi\fi -%% {fgfirst}{back flap} -\ifx\bookcover@fgfirst@backflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth} - \bookcover@partwidth{\flapwidth} - \bookcover@fg{\bookcover@fgfirst@backflap}\fi\fi -%% {fgfirst}{back} -\ifx\bookcover@fgfirst@back\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@partwidth{\coverwidth} - \bookcover@fg{\bookcover@fgfirst@back}\fi -%% {fgfirst}{spine} -\ifx\bookcover@fgfirst@spine\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth} - \bookcover@partwidth{\spinewidth} - \bookcover@fg{\bookcover@fgfirst@spine}\fi -%% {fgfirst}{front} -\ifx\bookcover@fgfirst@front\@empty\else - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@partwidth{\coverwidth} - \bookcover@fg{\bookcover@fgfirst@front}\fi -%% {fgfirst}{front flap} -\ifx\bookcover@fgfirst@frontflap\@empty\else\ifdim\flapwidth>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+2\coverwidth+\spinewidth} - \bookcover@partwidth{\flapwidth} - \bookcover@fg{\bookcover@fgfirst@frontflap}\fi\fi -%% {fgfirst}{above front} = {fgfirst}{remark} in v1.0 -\ifx\bookcover@fgfirst@abovefront\@empty\else\ifdim\marklength>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@ypos{0mm} - \bookcover@partwidth{\coverwidth} - \bookcover@partheight{\marklength} - \bookcover@remark{\bookcover@fgfirst@abovefront}\fi\fi -%% {fgfirst}{below front} -\ifx\bookcover@fgfirst@belowfront\@empty\else\ifdim\marklength>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth+\coverwidth+\spinewidth} - \bookcover@ypos{\marklength+2\bleedwidth+\coverheight} - \bookcover@partwidth{\coverwidth} - \bookcover@partheight{\marklength} - \bookcover@remark{\bookcover@fgfirst@belowfront}\fi\fi -%% {fgfirst}{above back} -\ifx\bookcover@fgfirst@aboveback\@empty\else\ifdim\marklength>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@ypos{0mm} - \bookcover@partwidth{\coverwidth} - \bookcover@partheight{\marklength} - \bookcover@remark{\bookcover@fgfirst@aboveback}\fi\fi -%% {fgfirst}{below back} -\ifx\bookcover@fgfirst@belowback\@empty\else\ifdim\marklength>0mm - \bookcover@xpos{\marklength+\bleedwidth+\flapwidth} - \bookcover@ypos{\marklength+2\bleedwidth+\coverheight} - \bookcover@partwidth{\coverwidth} - \bookcover@partheight{\marklength} - \bookcover@remark{\bookcover@fgfirst@belowback}\fi\fi -%% marks -\bookcover@marks -%% trimming -\ifbookcover@trimmed\bookcover@trimming\fi -%% new book cover -\mbox{}\newpage\bookcover@reset} % \end{macrocode} % \Finale \endinput
\ No newline at end of file |