diff options
Diffstat (limited to 'tex/context/base/page-bck.tex')
-rw-r--r-- | tex/context/base/page-bck.tex | 381 |
1 files changed, 235 insertions, 146 deletions
diff --git a/tex/context/base/page-bck.tex b/tex/context/base/page-bck.tex index 165bbafaf..967679216 100644 --- a/tex/context/base/page-bck.tex +++ b/tex/context/base/page-bck.tex @@ -50,9 +50,9 @@ %D amount of background calculations. The main switch is set %D by the recalculate directive. %D -%D \starttyping +%D \starttypen %D \recalculatebackgrounds -%D \stoptyping +%D \stoptypen %D %D Other modules may not directly set the switches %D themselves. @@ -64,12 +64,12 @@ %D {*background} mode. This mode is only available when %D typesetting the pagebody. %D -%D \starttyping +%D \starttypen %D \startmode[*background] ... -%D \stoptyping +%D \stoptypen \appendtoks - \ifsomebackground \ifnewbackground \setsystemmode\v!background \fi \fi + \ifsomebackground \ifnewbackground \setsystemmode\v!achtergrond \fi \fi \to \everybeforepagebody %D \macros @@ -81,12 +81,12 @@ %D is made up by four macros that add background to parts of %D the layout. %D -%D \starttyping +%D \starttypen %D \addmainbackground <box> %D \addtextbackground <box> %D \addpagebackground <box> %D \addprintbackground <box> -%D \stoptyping +%D \stoptypen %D To minimize calculations, we keep track of the state of the %D background of each area. A previous implementation did @@ -96,15 +96,31 @@ %D (On the 824 pages maps bibliography runtime went down from %D 309 to 299 seconds.) +% \def\checkbackground#1% +% {\edef\!!stringe{\??ma#1}% +% \doifelsevaluenothing{\!!stringe\c!achtergrond } +% {\doifelsevaluenothing{\!!stringe\c!voorgrondkleur} +% {\doifelsevalue{\!!stringe\c!kader }\v!aan\!!doneatrue +% {\doifelsevalue{\!!stringe\c!linkerkader }\v!aan\!!doneatrue +% {\doifelsevalue{\!!stringe\c!rechterkader}\v!aan\!!doneatrue +% {\doifelsevalue{\!!stringe\c!bovenkader }\v!aan\!!doneatrue +% {\doifelsevalue{\!!stringe\c!onderkader }\v!aan\!!doneatrue +% \!!doneafalse}}}}} +% \!!doneatrue} +% \!!doneatrue +% \if!!donea +% \expandafter\setusage\else\expandafter\resetusage +% \fi{\??ma#1}} + \def\checkbackground#1% {\edef\!!stringe{\??ma#1}% - \doifelsevaluenothing{\!!stringe\c!background } - {\doifelsevaluenothing{\!!stringe\c!foregroundcolor} - {\doifelsevalue{\!!stringe\c!frame }\v!on\!!doneatrue - {\doifelsevalue{\!!stringe\c!leftframe }\v!on\!!doneatrue - {\doifelsevalue{\!!stringe\c!rightframe}\v!on\!!doneatrue - {\doifelsevalue{\!!stringe\c!topframe }\v!on\!!doneatrue - {\doifelsevalue{\!!stringe\c!bottomframe }\v!on\!!doneatrue + \doifelsevaluenothing{\!!stringe\c!achtergrond } + {\doifelsevaluenothing{\!!stringe\c!voorgrondkleur} + {\doifelsevalue{\!!stringe\c!kader }\v!aan\!!doneatrue + {\doifelsevalue{\!!stringe\c!linkerkader }\v!aan\!!doneatrue + {\doifelsevalue{\!!stringe\c!rechterkader}\v!aan\!!doneatrue + {\doifelsevalue{\!!stringe\c!bovenkader }\v!aan\!!doneatrue + {\doifelsevalue{\!!stringe\c!onderkader }\v!aan\!!doneatrue \!!doneafalse}}}}} \!!doneatrue} \!!doneatrue @@ -133,11 +149,10 @@ \def\addsomebackground#1#2#3#4% area box width height / zero test added {\ifsomebackgroundfound#1\ifdim#3>\zeropoint\ifdim#4>\zeropoint - \doifvaluesomething{\??ma#1\c!setups}{\setups[\getvalue{\??ma#1\c!setups}]}% should not produce funny spaces ! \setbox#2\vbox\fastlocalframed [\??ma#1] - [\c!component=#1,\c!strut=\v!no,\c!offset=\v!overlay,\c!setups=,% - \c!width=#3,\c!height=#4] + [\c!component=#1,\c!strut=\v!nee,\c!offset=\v!overlay,% + \c!breedte=#3,\c!hoogte=#4] {\dp#2\zeropoint\box#2}% \fi\fi\fi} @@ -147,7 +162,7 @@ \def\addprintbackground#1% {\addsomebackground - \v!paper#1\printpaperwidth\printpaperheight} + \v!papier#1\printpapierbreedte\printpapierhoogte} %D The page backgrounds can be put behind the {\em left %D page}, the {\em right page} or {\em each page}. As with @@ -155,13 +170,13 @@ \def\addpagebackground#1% {\doifbothsidesoverruled - \addsomebackground\v!rightpage#1\paperwidth\paperheight + \addsomebackground\v!rechterpagina#1\papierbreedte\papierhoogte \orsideone - \addsomebackground\v!rightpage#1\paperwidth\paperheight + \addsomebackground\v!rechterpagina#1\papierbreedte\papierhoogte \orsidetwo - \addsomebackground\v!leftpage #1\paperwidth\paperheight + \addsomebackground\v!linkerpagina #1\papierbreedte\papierhoogte \od - \addsomebackground\v!page #1\paperwidth\paperheight} + \addsomebackground\v!pagina #1\papierbreedte\papierhoogte} %D Then there are the 25 areas that make up the layout: {\em %D top, header, text, footer, bottom} times {\em left edge, @@ -190,9 +205,9 @@ \def\addtextbackground#1% {\ifconditional\hiddenbackgroundenabled - \addsomebackground\v!hidden#1\makeupwidth\textheight % mine ! + \addsomebackground\v!verborgen#1\zetbreedte\teksthoogte % mine ! \fi - \addsomebackground\v!text#1\makeupwidth\textheight} + \addsomebackground\v!tekst#1\zetbreedte\teksthoogte} % \def\addtextbackground#1% % {\ifconditional\hiddenbackgroundenabled @@ -265,7 +280,7 @@ \global\chardef\newrightbackground\zerocount \fi \od - \ifx\@@mastate\v!repeat\else\global\newbackgroundfalse\fi} + \ifx\@@mastatus\v!herhaal\else\global\newbackgroundfalse\fi} \def\addmainbackground#1% todo: dimension spec {\ifsomebackground @@ -283,18 +298,18 @@ \global\let\pagebackgroundhoffset\!!zeropoint \global\let\pagebackgroundvoffset\!!zeropoint \global\let\pagebackgrounddepth \!!zeropoint - \doifsomebackgroundelse{\v!text\v!text}\donetrue\donefalse - \ifdone\else\doifsomebackgroundelse\v!text\donetrue\donothing\fi + \doifsomebackgroundelse{\v!tekst\v!tekst}\donetrue\donefalse + \ifdone\else\doifsomebackgroundelse\v!tekst\donetrue\donothing\fi \ifdone \bgroup - \scratchdimen\getvalue{\??ma\v!page\c!offset}% - \doifsomebackgroundelse{\v!top\v!text}\donothing - {\doifsomebackgroundelse{\v!bottom\v!text}\donothing + \scratchdimen\getvalue{\??ma\v!pagina\c!offset}% + \doifsomebackgroundelse{\v!boven\v!tekst}\donothing + {\doifsomebackgroundelse{\v!onder\v!tekst}\donothing {\xdef\pagebackgroundhoffset{\the\scratchdimen}}}% - \doifsomebackgroundelse{\v!text\v!rightedge}\donothing - {\doifsomebackgroundelse{\v!text\v!leftedge}\donothing + \doifsomebackgroundelse{\v!tekst\v!rechterrand}\donothing + {\doifsomebackgroundelse{\v!tekst\v!linkerrand}\donothing {\xdef\pagebackgroundvoffset{\the\scratchdimen}% - \scratchdimen\getvalue{\??ma\v!page\c!depth}% + \scratchdimen\getvalue{\??ma\v!pagina\c!diepte}% \xdef\pagebackgrounddepth{\the\scratchdimen}}}% \egroup \fi @@ -302,6 +317,26 @@ \appendtoks \setbackgroundoffsets \to \everybeforepagebody +% \def\setbackgroundbox#1#2% +% {\global\setbox#1\vbox +% {\dontcomplain +% \calculatereducedvsizes +% \offinterlineskip +% #2\relax +% \vskip-\bovenhoogte +% \vskip-\bovenafstand +% \dodopagebodybackground\v!boven\bovenhoogte +% \vskip\bovenafstand +% \dodopagebodybackground\v!hoofd\hoofdhoogte +% \vskip\hoofdafstand +% \dodopagebodybackground\v!tekst\teksthoogte +% \vskip\voetafstand +% \dodopagebodybackground\v!voet\voethoogte +% \vskip\onderafstand +% \dodopagebodybackground\v!onder\onderhoogte +% \vfilll}% +% \smashbox#1} + \newconditional\swapbackgroundmargins \settrue\swapbackgroundmargins \def\setbackgroundbox#1#2% @@ -310,41 +345,61 @@ \swapmargins \ifconditional\swapbackgroundmargins \doifmarginswapelse \donothing - {\swapmacros\v!rightmargin\v!leftmargin - \swapmacros\v!rightedge \v!leftedge}% + {\swapmacros\v!rechtermarge\v!linkermarge + \swapmacros\v!rechterrand \v!linkerrand}% \fi \calculatereducedvsizes \offinterlineskip #2\relax - \vskip-\topheight - \vskip-\topdistance - \dodopagebodybackground\v!top\topheight - \vskip\topdistance - \dodopagebodybackground\v!header\headerheight - \vskip\headerdistance - \dodopagebodybackground\v!text\textheight - \vskip\footerdistance - \dodopagebodybackground\v!footer\footerheight - \vskip\bottomdistance - \dodopagebodybackground\v!bottom\bottomheight + \vskip-\bovenhoogte + \vskip-\bovenafstand + \dodopagebodybackground\v!boven\bovenhoogte + \vskip\bovenafstand + \dodopagebodybackground\v!hoofd\hoofdhoogte + \vskip\hoofdafstand + \dodopagebodybackground\v!tekst\teksthoogte + \vskip\voetafstand + \dodopagebodybackground\v!voet\voethoogte + \vskip\onderafstand + \dodopagebodybackground\v!onder\onderhoogte \vfilll}% \smashbox#1} +% \def\dodopagebodybackground#1#2% +% {\ifdim#2>\zeropoint % added, faster +% \setbox\scratchbox\vbox to #2 +% \bgroup\hbox\bgroup +% \swapmargins +% \goleftonpage +% \dododopagebodybackground\linkerrandbreedte #2#1\v!linkerrand +% \hskip\linkerrandafstand +% \dododopagebodybackground\linkermargebreedte #2#1\v!linkermarge +% \hskip\linkermargeafstand +% \dododopagebodybackground\zetbreedte #2#1\v!tekst +% \hskip\rechtermargeafstand +% \dododopagebodybackground\rechtermargebreedte#2#1\v!rechtermarge +% \hskip\rechterrandafstand +% \dododopagebodybackground\rechterrandbreedte #2#1\v!rechterrand +% \egroup\egroup +% \wd\scratchbox\zeropoint +% \box\scratchbox\relax +% \fi} + \def\dodopagebodybackground#1#2% {\ifdim#2>\zeropoint % added, faster \setbox\scratchbox\vbox to #2 \bgroup\hbox\bgroup % \swapmargins \goleftonpage - \dododopagebodybackground\leftedgewidth #2#1\v!leftedge - \hskip\leftedgedistance - \dododopagebodybackground\leftmarginwidth #2#1\v!leftmargin - \hskip\leftmargindistance - \dododopagebodybackground\makeupwidth #2#1\v!text - \hskip\rightmargindistance - \dododopagebodybackground\rightmarginwidth#2#1\v!rightmargin - \hskip\rightedgedistance - \dododopagebodybackground\rightedgewidth #2#1\v!rightedge + \dododopagebodybackground\linkerrandbreedte #2#1\v!linkerrand + \hskip\linkerrandafstand + \dododopagebodybackground\linkermargebreedte #2#1\v!linkermarge + \hskip\linkermargeafstand + \dododopagebodybackground\zetbreedte #2#1\v!tekst + \hskip\rechtermargeafstand + \dododopagebodybackground\rechtermargebreedte#2#1\v!rechtermarge + \hskip\rechterrandafstand + \dododopagebodybackground\rechterrandbreedte #2#1\v!rechterrand \egroup\egroup \wd\scratchbox\zeropoint \box\scratchbox\relax @@ -354,11 +409,10 @@ {\ifsomebackgroundfound{#3#4}% \ifdim#2>\zeropoint\relax \ifdim#1>\zeropoint\relax - \doifvaluesomething{\??ma#3#4\c!setups}{\setups[\getvalue{\??ma#3#4\c!setups}]}% should not produce funny spaces ! \fastlocalframed [\??ma#3#4] - [\c!component=#3-#4,\c!width=#1,\c!height=#2,\c!offset=\v!overlay,\c!setups=] - {\getvalue{\??ma#3#4\c!command}}% {\hsize=#1\vsize=#2....} + [\c!component=#3-#4,\c!breedte=#1,\c!hoogte=#2,\c!offset=\v!overlay] + {\getvalue{\??ma#3#4\c!commando}}% {\hsize=#1\vsize=#2....} \else \hskip#1% \fi @@ -374,11 +428,11 @@ %D usage, but since today's \TEX's are large, we now do the %D work on forehand. %D -%D \starttyping +%D \starttypen %D \setupbackgrounds [settings] %D \setupbackgrounds [paper,page,text,..] [settings] %D \setupbackgrounds [top,...] [leftedge,...] [settings] -%D \stoptyping +%D \stoptypen %D %D \showsetup{\y!setupbackgrounds} %D @@ -392,7 +446,7 @@ {\ifthirdargument \global\somebackgroundtrue \def\docommando##1% - {\doifinsetelse{##1}{\v!paper,\v!page,\v!leftpage,\v!rightpage} + {\doifinsetelse{##1}{\v!papier,\v!pagina,\v!linkerpagina,\v!rechterpagina} {\getparameters[\??ma##1][#3]\checkbackground{##1}} {\def\dodocommando####1% {\getparameters[\??ma##1####1][#3]\checkbackground{##1####1}}% @@ -400,26 +454,26 @@ \processcommalist[#1]\docommando \else\ifsecondargument \global\somebackgroundtrue - \doifcommonelse{#1}{\v!text,\v!hidden,% + \doifcommonelse{#1}{\v!tekst,\v!verborgen,% %\v!linkertekst,\v!rechtertekst,% - \v!paper,\v!page,\v!leftpage,\v!rightpage} + \v!papier,\v!pagina,\v!linkerpagina,\v!rechterpagina} {\def\docommando##1% {\getparameters[\??ma##1][#2]\checkbackground{##1}}% \processcommalist[#1]\docommando}% {\setupbackgrounds [#1]% - [\v!leftedge,\v!leftmargin,\v!text,\v!rightmargin,\v!rightedge]% + [\v!linkerrand,\v!linkermarge,\v!tekst,\v!rechtermarge,\v!rechterrand]% [#2]}% \else\iffirstargument \getparameters[\??ma][#1]% \fi\fi\fi - \doifelsevalue{\??ma\v!page\c!offset}\v!overlay + \doifelsevalue{\??ma\v!pagina\c!offset}\v!overlay {\global\pageoffset\zeropoint} - {\global\pageoffset\getvalue{\??ma\v!page\c!offset}}% - \global\pagedepth\getvalue{\??ma\v!page\c!depth}% + {\global\pageoffset\getvalue{\??ma\v!pagina\c!offset}}% + \global\pagedepth\getvalue{\??ma\v!pagina\c!diepte}% \xdef\pagebackgroundoffset{\the\pageoffset}% \xdef\pagebackgrounddepth {\the\pagedepth }% - \doifelse\@@mastate\v!stop + \doifelse\@@mastatus\v!stop {\global\newbackgroundfalse} {\global\newbackgroundtrue }} @@ -431,42 +485,42 @@ %D Each areas (currently there are $1+3+25+1=30$ of them) %D has its own low level framed object associated. -\presetlocalframed [\??ma\v!paper] -\presetlocalframed [\??ma\v!page] -\presetlocalframed [\??ma\v!leftpage] -\presetlocalframed [\??ma\v!rightpage] +\presetlocalframed [\??ma\v!papier] +\presetlocalframed [\??ma\v!pagina] +\presetlocalframed [\??ma\v!linkerpagina] +\presetlocalframed [\??ma\v!rechterpagina] \copyparameters - [\??ma\v!paper\c!frame][\??ma\v!page] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!papier\c!kader][\??ma\v!pagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!paper\c!background][\??ma\v!page] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!papier\c!achtergrond][\??ma\v!pagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!page\c!frame][\??ma\v!page] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!pagina\c!kader][\??ma\v!pagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!page\c!background][\??ma\v!page] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!pagina\c!achtergrond][\??ma\v!pagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!leftpage\c!frame][\??ma\v!leftpage] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!linkerpagina\c!kader][\??ma\v!linkerpagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!leftpage\c!background][\??ma\v!leftpage] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!linkerpagina\c!achtergrond][\??ma\v!linkerpagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!rightpage\c!frame][\??ma\v!rightpage] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!rechterpagina\c!kader][\??ma\v!rechterpagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] \copyparameters - [\??ma\v!rightpage\c!background][\??ma\v!rightpage] - [\c!offset,\c!depth,\c!radius,\c!corner,\c!color,\c!screen] + [\??ma\v!rechterpagina\c!achtergrond][\??ma\v!rechterpagina] + [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] %D We save some keying by defining the areas using %D intermediate commands. The inheritance macro makes sure @@ -474,38 +528,38 @@ \def\dodocommando#1#2% {\copylocalframed - [\??ma#1#2][\??ma\v!page]% + [\??ma#1#2][\??ma\v!pagina]% \getparameters [\??ma#1#2] - [\c!background=,\c!frame=,\c!color=,\c!screen=\@@rsscreen, - \c!bottomframe=,\c!topframe=,\c!leftframe=,\c!rightframe=]% - \inheritparameter[\??ma][#1#2\c!color][\v!page\c!color]% - \inheritparameter[\??ma][#1#2\c!screen][\v!page\c!screen]% - \inheritparameter[\??ma][#1#2\c!framecolor][\v!page\c!framecolor]% - \inheritparameter[\??ma][#1#2\c!backgroundcolor][\v!page\c!backgroundcolor]% - \inheritparameter[\??ma][#1#2\c!backgroundscreen][\v!page\c!backgroundscreen]} + [\c!achtergrond=,\c!kader=,\c!kleur=,\c!raster=\@@rsraster, + \c!onderkader=,\c!bovenkader=,\c!linkerkader=,\c!rechterkader=]% + \inheritparameter[\??ma][#1#2\c!kleur][\v!pagina\c!kleur]% + \inheritparameter[\??ma][#1#2\c!raster][\v!pagina\c!raster]% + \inheritparameter[\??ma][#1#2\c!kaderkleur][\v!pagina\c!kaderkleur]% + \inheritparameter[\??ma][#1#2\c!achtergrondkleur][\v!pagina\c!achtergrondkleur]% + \inheritparameter[\??ma][#1#2\c!achtergrondraster][\v!pagina\c!achtergrondraster]} %D The stand alone text area inherits from the page too. -\dodocommando\v!text \empty +\dodocommando\v!tekst \empty %dodocommando\v!linkertekst \empty %dodocommando\v!rechtertekst\empty -\dodocommando\v!hidden \empty +\dodocommando\v!verborgen \empty %D We now define all 25 main areas in a row. \def\docommando#1% - {\dodocommando#1\v!leftedge - \dodocommando#1\v!leftmargin - \dodocommando#1\v!text - \dodocommando#1\v!rightmargin - \dodocommando#1\v!rightedge} - -\docommando\v!top -\docommando\v!header -\docommando\v!text -\docommando\v!footer -\docommando\v!bottom + {\dodocommando#1\v!linkerrand + \dodocommando#1\v!linkermarge + \dodocommando#1\v!tekst + \dodocommando#1\v!rechtermarge + \dodocommando#1\v!rechterrand} + +\docommando\v!boven +\docommando\v!hoofd +\docommando\v!tekst +\docommando\v!voet +\docommando\v!onder %D We need some cleanup now. @@ -515,29 +569,29 @@ %D defaults. \setupbackgrounds - [\c!state=\c!start] + [\c!status=\c!start] \setupbackgrounds - [\v!paper,\v!page,\v!leftpage,\v!rightpage] - [\c!frame=\v!off, - \c!radius=.5\korpsgrootte, - \c!corner=\v!rectangular, - \c!background=, - \c!screen=\@@rsscreen, - \c!color=, - %\c!frameoffset=\getvalue{\??ma\v!page\c!offset}, - %\c!backgroundoffset=\getvalue{\??ma\v!page\c!offset}, + [\v!papier,\v!pagina,\v!linkerpagina,\v!rechterpagina] + [\c!kader=\v!uit, + \c!straal=.5\korpsgrootte, + \c!hoek=\v!recht, + \c!achtergrond=, + \c!raster=\@@rsraster, + \c!kleur=, + %\c!kaderoffset=\getvalue{\??ma\v!pagina\c!offset}, + %\c!achtergrondoffset=\getvalue{\??ma\v!pagina\c!offset}, \c!offset=\!!zeropoint, % later set to \v!overlay, watch out ! - \c!depth=\!!zeropoint] + \c!diepte=\!!zeropoint] \def\docommando#1% - {\inheritparameter[\??ma][#1\c!frameoffset][\v!page\c!offset]% - \inheritparameter[\??ma][#1\c!backgroundoffset][\v!page\c!offset]} + {\inheritparameter[\??ma][#1\c!kaderoffset][\v!pagina\c!offset]% + \inheritparameter[\??ma][#1\c!achtergrondoffset][\v!pagina\c!offset]} -\docommando\v!paper -\docommando\v!page -\docommando\v!leftpage -\docommando\v!rightpage +\docommando\v!papier +\docommando\v!pagina +\docommando\v!linkerpagina +\docommando\v!rechterpagina %D Again we clean up temporary macros. @@ -559,25 +613,25 @@ {\global\setfalse\hiddenbackgroundenabled} \def\hiddenbackground - {\v!text-2,\v!text-1,\v!foreground,\v!text+1,\v!text+2} + {\v!tekst-2,\v!tekst-1,\v!voorgrond,\v!tekst+1,\v!tekst+2} \setupbackgrounds - [\v!hidden] - [\c!background=\hiddenbackground] + [\v!verborgen] + [\c!achtergrond=\hiddenbackground] % The next series is used in local (for instance floating) % backgrounds. \presetlocalframed - [\??ma\v!local] + [\??ma\v!lokaal] \def\localbackground - {\v!local-2,\v!local-1,\v!foreground,\v!local+1,\v!local+2} + {\v!lokaal-2,\v!lokaal-1,\v!voorgrond,\v!lokaal+1,\v!lokaal+2} -\defineoverlay[\v!local-2][\positionoverlay{\v!local-2}] -\defineoverlay[\v!local-1][\positionoverlay{\v!local-1}] -\defineoverlay[\v!local+1][\positionoverlay{\v!local+1}] -\defineoverlay[\v!local+2][\positionoverlay{\v!local+2}] +\defineoverlay[\v!lokaal-2][\positionoverlay{\v!lokaal-2}] +\defineoverlay[\v!lokaal-1][\positionoverlay{\v!lokaal-1}] +\defineoverlay[\v!lokaal+1][\positionoverlay{\v!lokaal+1}] +\defineoverlay[\v!lokaal+2][\positionoverlay{\v!lokaal+2}] \def\addlocalbackgroundtobox {\ifconditional\hiddenbackgroundenabled @@ -586,6 +640,26 @@ \resetglobal \expandafter\gobbleoneargument \fi} +% \def\doaddlocalbackground#1% +% {\scratchdimen\dp#1% +% \edef\next +% {\noexpand\redoglobal\wd#1\the\wd#1% +% \noexpand\redoglobal\ht#1\the\ht#1% +% \noexpand\dodoglobal\dp#1\the\dp#1}% +% \dp#1\zeropoint +% \redoglobal\setbox#1\hbox +% {\fastlocalframed +% [\??ma\v!lokaal] +% [\c!kader=\v!uit, +% \c!offset=\v!overlay, +% \c!achtergrond=\localbackground]% +% {\registerMPlocaltextarea{\box#1}}}% +% \ifdim\naturalfloatdepth>\zeropoint % maybe take difference +% \redoglobal\setbox#1\hbox{\lower\scratchdimen\box#1}% +% \fi +% \doglobal\increment\localpositionnumber % afterwards ! +% \next} + \def\doaddlocalbackground#1% {\edef\next {\noexpand\redoglobal\wd#1\the\wd#1% @@ -593,14 +667,29 @@ \noexpand\dodoglobal\dp#1\the\dp#1}% \dodoglobal\setbox#1\hbox {\fastlocalframed - [\??ma\v!local] - [\c!component=local,\c!frame=\v!off,\c!offset=\v!overlay,\c!setups=,% - \c!width=\wd#1,hoogte=\ht#1,% no diepte=\dp#1 in cont-exp.tex, to be checked ! - \c!background=\localbackground]% + [\??ma\v!lokaal] + [\c!component=local,\c!kader=\v!uit,\c!offset=\v!overlay,% + \c!achtergrond=\localbackground]% {\registerMPlocaltextarea{\box#1}}}% \next \doglobal\increment\localpositionnumber\relax} % afterwards ! +\def\doaddlocalbackground#1% + {\edef\next + {\noexpand\redoglobal\wd#1\the\wd#1% + \noexpand\redoglobal\ht#1\the\ht#1% + \noexpand\dodoglobal\dp#1\the\dp#1}% + \dodoglobal\setbox#1\hbox + {\fastlocalframed + [\??ma\v!lokaal] + [\c!component=local,\c!kader=\v!uit,\c!offset=\v!overlay,% + \c!breedte=\wd#1,\c!hoogte=\ht#1,\c!diepte=\dp#1,% + \c!achtergrond=\localbackground]% + {\registerMPlocaltextarea{\box#1}}}% + \next + \doglobal\increment\localpositionnumber\relax} % afterwards ! + + % Test how previous macro behaves with depth: % % \startcolumnset @@ -618,19 +707,19 @@ \protect \endinput -%D Removed \quote {features}: +%D Removed \citeer {features}: %D -%D \starttyping -%D \startinteraction +%D \starttypen +%D \startinteractie %D \doifmarginswapelse %D {\copy\leftbackground} %D {\copy\rightbackground}% -%D \stopinteraction -%D \stoptyping +%D \stopinteractie +%D \stoptypen %D -%D \starttyping +%D \starttypen %D \edef\setpagebackgrounddepth% %D {\dp#2=\the\dp#2}% %D \setbox#2=\vbox\localframed[\??ma#1]{...} %D \setpagebackgrounddepth -%D \stoptyping +%D \stoptypen |