lots of tweaks...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2021-08-06 03:47:58 +03:00
parent 9c7f68d54b
commit c6a2697061
2 changed files with 254 additions and 188 deletions

View File

@ -284,30 +284,25 @@
\edef\layoutmode{\photobook@layoutmode} \edef\layoutmode{\photobook@layoutmode}
\edef\pdfpagelayout{\photobook@pdfpagelayout}
% layout modes... % layout modes...
% %
\newif\ifcoverlayout \newif\ifcoverlayout
\coverlayoutfalse
\newif\ifhardcoverlayout \newif\ifhardcoverlayout
\hardcoverlayoutfalse
\newif\ifsoftcoverlayout \newif\ifsoftcoverlayout
\softcoverlayoutfalse
\newif\ifendpaperlayout \newif\ifendpaperlayout
\endpaperlayoutfalse
\newif\ifjacketlayout \newif\ifjacketlayout
\jacketlayoutfalse
% agrigates... % agrigates...
\newif\ifcoverlikelayout \newif\ifcoverlikelayout
\coverlikelayoutfalse
\newif\ifblocklayout \newif\ifblocklayout
\blocklayoutfalse
\newlength\spinewidth \newlength\spinewidth
@ -370,6 +365,13 @@
\newcommand\RecalculatePageLengths{ \newcommand\RecalculatePageLengths{
% layout bools... % layout bools...
\coverlayoutfalse
\hardcoverlayoutfalse
\softcoverlayoutfalse
\endpaperlayoutfalse
\jacketlayoutfalse
\coverlikelayoutfalse
\blocklayoutfalse
\ifdefstring{\layoutmode}{block}{ \ifdefstring{\layoutmode}{block}{
\blocklayouttrue }{} \blocklayouttrue }{}
\ifdefstring{\layoutmode}{cover}{ \ifdefstring{\layoutmode}{cover}{
@ -389,10 +391,12 @@
% pdf layout... % pdf layout...
\ifx\photobook@pdfpagelayout\empty \ifx\photobook@pdfpagelayout\empty
\ifblocklayout \ifblocklayout
\def\photobook@pdfpagelayout{TwoPageRight} \def\pdfpagelayout{TwoPageRight}
\else \else
\def\photobook@pdfpagelayout{SinglePage} \def\pdfpagelayout{SinglePage}
\fi \fi
\else
\def\pdfpagelayout{\photobook@pdfpagelayout}
\fi \fi
% items to ignore in different layouts... % items to ignore in different layouts...
% XXX is this the correct way to go??? % XXX is this the correct way to go???
@ -409,14 +413,14 @@
\setlength\jacketflap{0pt} \setlength\jacketflap{0pt}
\fi \fi
% flaps... % flaps...
\ifnum\jacketflapfront=0 \ifdim\jacketflapfront=0pt
\setlength\jacketflapfront{\jacketflap} \setlength\jacketflapfront{\jacketflap}
\fi \fi
\ifnum\jacketflapback=0 \ifdim\jacketflapback=0pt
\setlength\jacketflapback{\jacketflap} \setlength\jacketflapback{\jacketflap}
\fi \fi
% block size... % block size...
\ifnum\blockwidth=0 \ifdim\blockwidth=0pt
% layout: block... % layout: block...
\setlength\blockwidth{ \setlength\blockwidth{
\ifx\photobook@blockwidth\empty \ifx\photobook@blockwidth\empty
@ -454,7 +458,7 @@
\ifendpaperlayout \ifendpaperlayout
\setlength\blockwidth{ 2\blockwidth } \fi \setlength\blockwidth{ 2\blockwidth } \fi
\fi \fi
\ifnum\blockheight=0 \ifdim\blockheight=0pt
% layout: block / endpaper... % layout: block / endpaper...
\setlength\blockheight{ \setlength\blockheight{
\ifx\photobook@blockheight\empty \ifx\photobook@blockheight\empty
@ -499,6 +503,14 @@
\relax} } \relax} }
\newcommand\ResetPageLengths{
\setlength\blockwidth{0mm}
\setlength\blockheight{0mm}
\edef\pdfpagelayout{}
%
\RecalculatePageLengths }
%---------------------------------------------------------------------- %----------------------------------------------------------------------
% Setup (early)... % Setup (early)...
@ -528,7 +540,7 @@
Author={\@author}, Author={\@author},
Keywords={\@keywords}, Keywords={\@keywords},
}, },
pdfpagelayout=\photobook@pdfpagelayout, pdfpagelayout=\pdfpagelayout,
} }
@ -774,23 +786,45 @@
\clearpage } \clearpage }
\ifendpaperlayout %%% \photobook@newtemplatecell{name}{x}{y}{width}{heigth}
%%%
%%% XXX need to quote arguments to make them eval on env expansion and not
%%% on command expansion....
%%\newcommand\photobook@newtemplatecell[5]{
%% \newenvironment{#1}{%
%% \setlength\cellwidth{#4}
%% \setlength\cellheight{#5}
%% %
%% \begin{textblock*}{\pageblockwidth}(#2, #3)%
%% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
%% }{%
%% \end{minipage}%
%% \end{textblock*} } }
\newlength\cellwidth
\newlength\cellheight
% XXX for some reason this breaks... \newlength\cellwidth
\newenvironment{leftside}{% \newlength\cellheight
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
% endpaper...
%
% XXX for some reason naming this anything starting with endpaper will
% make LaTeX complain that that is already defined...
\newenvironment{leftside}{%
\setlength\cellwidth{\pageblockwidth} \setlength\cellwidth{\pageblockwidth}
\setlength\cellheight{\pageblockheight} \setlength\cellheight{\pageblockheight}
% %
\begin{textblock*}{\pageblockwidth}(\bleed, \bleed)% \begin{textblock*}{\pageblockwidth}(\bleed, \bleed)%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
\newenvironment{rightside}{%
\newenvironment{rightside}{%
\setlength\cellwidth{\pageblockwidth} \setlength\cellwidth{\pageblockwidth}
\setlength\cellheight{\pageblockheight} \setlength\cellheight{\pageblockheight}
% %
@ -799,24 +833,17 @@
+ \pageblockwidth, + \pageblockwidth,
\bleed )% \bleed )%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
\fi
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
% cover-like layout components... % cover-like layout components...
% front cover...
% %
% XXX should this be full size of block or \textwidth??? \newenvironment{frontcover}{%
% XXX make minipage cetering configurable...
\ifcoverlikelayout
\newlength\cellwidth
\newlength\cellheight
% front cover...
%
\newenvironment{frontcover}{%
\setlength\cellwidth{\dimexpr \setlength\cellwidth{\dimexpr
\pageblockwidth \pageblockwidth
+ \coverboardgrow \relax } + \coverboardgrow \relax }
@ -836,13 +863,14 @@
\bleed \bleed
+ \coverflap )% + \coverflap )%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
% back cover...
% % back cover...
\newenvironment{backcover}{% %
\newenvironment{backcover}{%
\setlength\cellwidth{\dimexpr \setlength\cellwidth{\dimexpr
\pageblockwidth \pageblockwidth
+ \coverboardgrow \relax } + \coverboardgrow \relax }
@ -858,15 +886,14 @@
\bleed \bleed
+ \coverflap )% + \coverflap )%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
% spine...
% % spine...
% XXX should this be hirizontaly or vertically oriented??? %
% ...options, different envs??? \newenvironment{spine}{%
\newenvironment{spine}{%
\setlength\cellwidth{\dimexpr \setlength\cellwidth{\dimexpr
\spinewidth \relax } \spinewidth \relax }
\setlength\cellheight{\dimexpr \setlength\cellheight{\dimexpr
@ -884,12 +911,15 @@
\bleed \bleed
+ \coverflap )% + \coverflap )%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
% XXX make args be up or down...
\newenvironment{vspine}[1][270]{% % vertical spine...
%
% XXX make args be up or down...
\newenvironment{vspine}[1][270]{%
\setlength\cellwidth{\dimexpr \setlength\cellwidth{\dimexpr
\spinewidth \relax } \spinewidth \relax }
\setlength\cellheight{\dimexpr \setlength\cellheight{\dimexpr
@ -906,25 +936,23 @@
+ \spinefold, + \spinefold,
\bleed \bleed
+ \coverflap )% + \coverflap )%
%\begin{turn}{270}
% XXX this does not work for some reason... % XXX this does not work for some reason...
%\begin{turn}{ \ifthenelse{\equal{#1}{up}}{270}{90} }% %\begin{turn}{\ifdefstring{#1}{up}{270}{90}}
\begin{turn}{#1} \begin{turn}{#1}
\begin{minipage}[t][\cellwidth][t]{\cellheight}% \begin{minipage}[t][\cellwidth][t]{\cellheight}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{turn} \end{turn}
\end{textblock*} } \end{textblock*} }
\fi
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
% jacket components... % jacket components...
% front flap...
% %
% NOTE: jacket is part of cover-like layouts... \newenvironment{frontflap}{%
\ifjacketlayout
% front flap...
%
\newenvironment{frontflap}{%
\setlength\cellwidth{\jacketflapfront } \setlength\cellwidth{\jacketflapfront }
\setlength\cellheight{\dimexpr \setlength\cellheight{\dimexpr
\pageblockheight \pageblockheight
@ -941,13 +969,14 @@
\bleed \bleed
+ \coverflap )% + \coverflap )%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
% back flap...
% % back flap...
\newenvironment{backflap}{% %
\newenvironment{backflap}{%
\setlength\cellwidth{\jacketflapback} \setlength\cellwidth{\jacketflapback}
\setlength\cellheight{\dimexpr \setlength\cellheight{\dimexpr
\pageblockheight \pageblockheight
@ -958,10 +987,9 @@
\bleed \bleed
+ \coverflap )% + \coverflap )%
\begin{minipage}[t][\cellheight][t]{\cellwidth}% \begin{minipage}[t][\cellheight][t]{\cellwidth}%
}{% }{%
\end{minipage}% \end{minipage}%
\end{textblock*} } \end{textblock*} }
\fi
\newcommand\photobook@TemplateCell[1]{ \newcommand\photobook@TemplateCell[1]{
@ -994,7 +1022,7 @@
\photobook@TemplateCell{FRONT COVER} \photobook@TemplateCell{FRONT COVER}
\end{frontcover} \end{frontcover}
%\begin{vspine}[90] %\begin{vspine}[90]
\begin{vspine} \begin{vspine}%[down]
\photobook@TemplateCell{SPINE} \photobook@TemplateCell{SPINE}
\end{vspine} \end{vspine}
\begin{backcover} \begin{backcover}

38
workflow/block2cover.tex Normal file
View File

@ -0,0 +1,38 @@
%----------------------------------------------------------------------
\documentclass[
layoutmode=block,
% page size...
blockwidth=240mm, blockheight=220mm,
bleed=4mm,
bindingoffset=5mm,
% image block configuration...
imageblockwidth=0.98, imageblockheight=0.98,
imageblockoffsettop=-0.1,
% misc...
9pt,final,openany
]{photobook}
% change layout...
%
% This can be usefull when having a single setup file for multiple book
% elemnts like page blocks, covers, endpapers and dust jackets...
\def\layoutmode{cover}
\setlength\spinewidth{7.1mm}
\ResetPageLengths
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
\begin{document}
\GenerateTemplate
\end{document}
%----------------------------------------------------------------------
% vim:set ts=4 sw=4 :