summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/pagelayout/tex/pagelayout.cls
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/pagelayout/tex/pagelayout.cls')
-rw-r--r--macros/latex/contrib/pagelayout/tex/pagelayout.cls42
1 files changed, 25 insertions, 17 deletions
diff --git a/macros/latex/contrib/pagelayout/tex/pagelayout.cls b/macros/latex/contrib/pagelayout/tex/pagelayout.cls
index 2f0257de2a..219520dc7b 100644
--- a/macros/latex/contrib/pagelayout/tex/pagelayout.cls
+++ b/macros/latex/contrib/pagelayout/tex/pagelayout.cls
@@ -13,8 +13,8 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
-\ProvidesClass{pagelayout}[2023/01/23 Layout graphic rich documents]
-\def\pagelayoutversion{1.0.3}
+\ProvidesClass{pagelayout}[2023/03/05 Layout graphic rich documents]
+\def\pagelayoutversion{1.0.4}
% packages
\RequirePackage{pgfopts}
@@ -391,8 +391,8 @@
\x=\dimexpr\pal@gridstartx{\pal@undefdim}-\pal@leftbleed\relax
\y=\dimexpr\pal@gridstarty{\pal@undefdim}-\pal@bottombleed\relax
- \pal@gridstartxdim=\dimexpr\pal@gridstartx{\pal@gridoptionx}\relax
- \pal@gridstartydim=\dimexpr\pal@gridstarty{\pal@gridoptiony}\relax
+ \pal@gridstartxdim=\dimexpr\pal@gridstartx{\pal@gridoptionx} - \pal@gutter / 2\relax
+ \pal@gridstartydim=\dimexpr\pal@gridstarty{\pal@gridoptiony} - \pal@gutter / 2\relax
\pal@gridwidth=\dimexpr\pal@calculatefullgridwidth\relax
\ifnum\rowsH>0
@@ -728,7 +728,7 @@
\newcommand\pal@gridstartx[1]{
\ifdim\dimexpr#1\relax=\pal@undefdim
\ifpal@isdoublepage
- (\pal@outermargin + \pal@leftbleed - \pal@gutter / 2
+ (\pal@outermargin + \pal@leftbleed
\ifpal@frontcover
\else
\ifpal@fanfold
@@ -740,11 +740,11 @@
\fi
)
\else
- (\pal@leftmargin + \pal@leftbleed - \pal@gutter / 2)
+ (\pal@leftmargin + \pal@leftbleed)
\fi
\else%
\ifpal@isdoublepage
- (#1 + \pal@leftbleed - \pal@gutter / 2
+ (#1 + \pal@leftbleed
\ifpal@frontcover
\else
\ifpal@fanfold
@@ -756,15 +756,15 @@
\fi
)
\else
- (#1 + \pal@leftbleed - \pal@gutter / 2)
+ (#1 + \pal@leftbleed)
\fi
\fi%
}
\newcommand\pal@gridstarty[1]{
\ifdim\dimexpr#1\relax=\pal@undefdim
- (\pal@bottommargin + \pal@bottombleed - \pal@gutter / 2)%
+ (\pal@bottommargin + \pal@bottombleed)%
\else%
- (#1 + \pal@bottombleed - \pal@gutter / 2)
+ (#1 + \pal@bottombleed)
\fi%
}
\newcommand\pal@setdimensions{
@@ -1532,8 +1532,20 @@
\height=\dimexpr(\pal@yy - \pal@y)\relax
\pal@x=\dimexpr(\pal@x + \width)\relax
\pal@y=\dimexpr(\pal@y + \height)\relax
- \ifdim\pal@x>\dimexpr\pal@pagewidth+\pal@innerbleed+\pal@outerbleed\relax
- \pal@x=\dimexpr\pal@pagewidth+\pal@innerbleed+\pal@outerbleed\relax
+ \ifpal@frontcover
+ \ifdim\pal@x>\dimexpr2\pal@pagewidth+2\pal@outerbleed+\spinewidth\relax
+ \pal@x=\dimexpr2\pal@pagewidth+2\pal@outerbleed+\spinewidth\relax
+ \fi
+ \else
+ \ifpal@fanfold
+ \ifdim\pal@x>\dimexpr2\pal@pagewidth+2\pal@outerbleed\relax
+ \pal@x=\dimexpr2\pal@pagewidth+2\pal@outerbleed\relax
+ \fi
+ \else
+ \ifdim\pal@x>\dimexpr\pal@pagewidth+\pal@innerbleed+\pal@outerbleed\relax
+ \pal@x=\dimexpr\pal@pagewidth+\pal@innerbleed+\pal@outerbleed\relax
+ \fi
+ \fi
\fi
\ifdim\pal@y>\dimexpr\pal@pageheight+\pal@topbleed+\pal@bottombleed\relax
\pal@y=\dimexpr\pal@pageheight+\pal@topbleed+\pal@bottombleed\relax
@@ -3720,11 +3732,7 @@
\ClassError{pagelayout}{Shell access forbidden. #1}{Make sure `pagelayoutapi' is added to the list of shell escape commands\MessageBreak(shell_escape_commands = pagelayoutapi) in your `texmf.cnf'.\MessageBreak\MessageBreak\@ehc}
}
\def\pal@errmsg@shellaccessfailed#1{
- \ifdefined\XeTeXversion
- \ClassError{pagelayout}{Shell access failed. #1}{Make sure the `scripts' folder is added to your path.\MessageBreak\MessageBreak\@ehc}
- \else
- \ClassError{pagelayout}{Shell access failed. #1}{Make sure the `scripts' folder is added to your path.\MessageBreak Shell access does not work in unrestricted mode (--shell-escape).\MessageBreak Make sure `pagelayoutapi' is added to the list of shell escape commands\MessageBreak(shell_escape_commands = pagelayoutapi) in your `texmf.cnf'.\MessageBreak\MessageBreak\@ehc}
- \fi
+ \ClassError{pagelayout}{Shell access failed. #1}{Make sure the `scripts' folder is added to your path.\MessageBreak\MessageBreak\@ehc}
}
\def\pal@errmsg@inkscapenotinstalled#1{
\ClassError{pagelayout}{Inkscape not installed. #1}{Make sure Inkscape is installed.\MessageBreak\MessageBreak\@ehc}