diff options
Diffstat (limited to 'tex/context/base/mkxl/page-box.mklx')
-rw-r--r-- | tex/context/base/mkxl/page-box.mklx | 36 |
1 files changed, 26 insertions, 10 deletions
diff --git a/tex/context/base/mkxl/page-box.mklx b/tex/context/base/mkxl/page-box.mklx index c8ceeb828..c962b831a 100644 --- a/tex/context/base/mkxl/page-box.mklx +++ b/tex/context/base/mkxl/page-box.mklx @@ -59,15 +59,6 @@ \v_page_target_bottom_fill \v_page_target_bottom}} -\def\page_boxes_apply_offset % #box - {\unless\ifzeropt\topoffset - \expandafter\page_boxes_apply_offset_indeed - \orelse\ifzeropt\backoffset - \expandafter\gobbleoneargument - \else - \expandafter\page_boxes_apply_offset_indeed - \fi} - \def\page_boxes_apply_offset_indeed#box% {\scratchwidth \wd#box% \scratchheight\ht#box% @@ -75,12 +66,28 @@ \setbox#box\vpack {\offinterlineskip \vskip\topoffset - \hskip\doifbothsides\backoffset\backoffset{-\backoffset}% + %\hskip\doifbothsides\backoffset\backoffset{-\backoffset}% + \hskip\doifbothsides++-\backoffset \box#box}% \wd#box\scratchwidth \ht#box\scratchheight \dp#box\scratchdepth} +% a variant (no gain so we stay mkiv compatible): +% +% \def\page_boxes_apply_offset_indeed#box% this needs testing in real situations +% {\boxxoffset#box\dimexpr\boxxoffset#box\doifbothsides++-\backoffset\relax +% \boxyoffset#box\dimexpr\boxyoffset#box-\topoffset\relax} + +\def\page_boxes_apply_offset % #box + {\unless\ifzeropt\topoffset + \expandafter\page_boxes_apply_offset_indeed + \orunless\ifzeropt\backoffset + \expandafter\page_boxes_apply_offset_indeed + \else + \expandafter\gobbleoneargument + \fi} + \def\page_boxes_apply_replicate {\ifnum\layoutparameter\c!nx>\plusone \expandafter\page_boxes_apply_replicate_indeed @@ -251,6 +258,15 @@ \box#1}% \dp#1\zeropoint} +% a variant (no gain so we stay mkiv compatible): +% +% \def\page_boxes_apply_offsets#1% +% {\scratchhoffset\doifbothsides\backspace\backspace{\dimexpr\paperwidth-\backspace-\makeupwidth\relax}% +% \boxxoffset#1\dimexpr\boxxoffset#1+\scratchhoffset\relax +% \boxyoffset#1\dimexpr\boxyoffset#1-\topspace\relax +% \wd#1\dimexpr\paperwidth+\scratchhoffset\relax +% \ht#1\dimexpr\paperheight+\topspace\relax} + %D This is rather specialized: \newconditional\c_page_areas_enabled |