summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/bookcover/bookcover.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-11-13 03:00:52 +0000
committerNorbert Preining <norbert@preining.info>2020-11-13 03:00:52 +0000
commit515071ffd355fff10d3aae843e62cb50a012d4f5 (patch)
treedb2031432bbfb7121d6905e1d0f3ac5fe332c869 /macros/latex/contrib/bookcover/bookcover.dtx
parent6280c0bca943a30d09e92916ab396082f6461c7f (diff)
CTAN sync 202011130300
Diffstat (limited to 'macros/latex/contrib/bookcover/bookcover.dtx')
-rw-r--r--macros/latex/contrib/bookcover/bookcover.dtx613
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