Hello, I have used Latex in the past and have the following code that inserts information on certain pages using afterpage. Is there some way to do a similar thing in context? \usepackage{afterpage} \newcommand{\insertpagea}{\vbox to \textheight{\vfill This page inserted on page 3 \vfill}} \newcommand{\insertpageb}{\vbox to \textheight{\vfill This page inserted on page 4 \vfill}} \newcommand{\incpage}{\ifthenelse{\value{page}=3}{\insertpagea}{% \ifthenelse{\value{page}=4}{\insertpageb}{% \afterpage{\incpage}}}} \afterpage{\incpage} \begin{document} . . . \end{document} I am not sure if this could be done at a different level also, maybe with texexec or something. I basically have a requirement to insert content into a document on a specific page. After doing so the table of contents must still be correct. I am still fairly new in the Tex world so any help you can give will be very much appreciated. Paul
Hi Paul, Paul Jones wrote:
Hello,
I have used Latex in the past and have the following code that inserts information on certain pages using afterpage. Is there some way to do a similar thing in context?
\setupoutput[pdf] \definelayer[info] \setuplayer[info] [height=\paperheight,width=\paperwidth] \setupbackgrounds[page] [background={text,info}]% info layer is above normal text layer \def\WhichPage#1{% \def\docommand##1{\ifnum\pageno=##1\relax \setlayerframed[info][x=20mm,y=\dimexpr\paperheight-15mm,location=r] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \number\pageno}\fi}% \rawprocesscommalist[#1]\docommand}% % put it in a command that is called for every page \setupheadertexts[\the\pageno\WhichPage{3,4}] \starttext \dorecurse{12}{\input zapf\relax \input tufte\relax} \stoptext I hope this fits your needs. Greetings, Peter
\usepackage{afterpage} \newcommand{\insertpagea}{\vbox to \textheight{\vfill This page inserted on page 3 \vfill}} \newcommand{\insertpageb}{\vbox to \textheight{\vfill This page inserted on page 4 \vfill}} \newcommand{\incpage}{\ifthenelse{\value{page}=3}{\insertpagea}{%
\ifthenelse{\value{page}=4}{\insertpageb}{% \afterpage{\incpage}}}} \afterpage{\incpage} \begin{document} . . . \end{document}
I am not sure if this could be done at a different level also, maybe with texexec or something. I basically have a requirement to insert content into a document on a specific page. After doing so the table of contents must still be correct.
I am still fairly new in the Tex world so any help you can give will be very much appreciated.
Paul
------------------------------------------------------------------------
_______________________________________________ ntg-context mailing list ntg-context@ntg.nl http://www.ntg.nl/mailman/listinfo/ntg-context
Peter Rolf wrote:
Hi Paul,
Paul Jones wrote:
Hello,
I have used Latex in the past and have the following code that inserts information on certain pages using afterpage. Is there some way to do a similar thing in context?
\setupoutput[pdf] \definelayer[info]
\setuplayer[info] [height=\paperheight,width=\paperwidth]
\setupbackgrounds[page] [background={text,info}]% info layer is above normal text layer
\def\WhichPage#1{% \def\docommand##1{\ifnum\pageno=##1\relax \setlayerframed[info][x=20mm,y=\dimexpr\paperheight-15mm,location=r] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \number\pageno}\fi}% \rawprocesscommalist[#1]\docommand}%
... lemme show you a few tricks: (1) test for a number in a set (use \expanded{\doifinset....} if in doubt) (2) use the rightbottom as preset \def\WhichPage#1% {\doifinset{\realfolio}{#1} {\setlayerframed [info] [preset=rightbottom,x=20mm,y=15mm] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \realfolio}% }} \def\WhichPage#1% {\doifinset{\realfolio}{#1} {\setlayerframed [info] [preset=rightbottom,x=20mm,y=15mm] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \realfolio}% }} or cleaner (no macro and args involved): \startsetups [at some pages] \setlayerframed [info] [preset=rightbottom,x=20mm,y=15mm] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \realfolio} \stopsetups \setupheadertexts[\doifinset{\realfolio}{3,4}{\directsetup{at some pages}}] now, this inserts *as overlay* however if one wants to insert something after a specific page, there is % \startpostponing [pagenumber] [+pageoffset] % % \startpostponing[2] % PAGE 2 \blank % \stoppostponing % % \startpostponing[+1] % PAGE +1 \blank % \stoppostponing % % \startpostponing[+2] % PAGE +2 \blank % \stoppostponing % % \starttext \dorecurse{4}{\input tufte \page} \stoptext Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
Hans Hagen wrote:
Peter Rolf wrote:
Hi Paul,
Paul Jones wrote:
Hello,
I have used Latex in the past and have the following code that inserts information on certain pages using afterpage. Is there some way to do a similar thing in context?
\setupoutput[pdf] \definelayer[info]
\setuplayer[info] [height=\paperheight,width=\paperwidth]
\setupbackgrounds[page] [background={text,info}]% info layer is above normal text layer
\def\WhichPage#1{% \def\docommand##1{\ifnum\pageno=##1\relax \setlayerframed[info][x=20mm,y=\dimexpr\paperheight-15mm,location=r] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \number\pageno}\fi}% \rawprocesscommalist[#1]\docommand}%
...
lemme show you a few tricks:
(1) test for a number in a set (use \expanded{\doifinset....} if in doubt) (2) use the rightbottom as preset
\def\WhichPage#1% {\doifinset{\realfolio}{#1} {\setlayerframed [info] [preset=rightbottom,x=20mm,y=15mm] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \realfolio}% }}
\def\WhichPage#1% {\doifinset{\realfolio}{#1} {\setlayerframed [info] [preset=rightbottom,x=20mm,y=15mm] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \realfolio}% }}
or cleaner (no macro and args involved):
\startsetups [at some pages]
\setlayerframed [info] [preset=rightbottom,x=20mm,y=15mm] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \realfolio}
\stopsetups
\setupheadertexts[\doifinset{\realfolio}{3,4}{\directsetup{at some pages}}]
now, this inserts *as overlay*
This is much better. Thank you! :)
however if one wants to insert something after a specific page, there is
Oeps, this is what \afterpage does....sorry Paul for the wrong answer ;) Peter
% \startpostponing [pagenumber] [+pageoffset] % % \startpostponing[2] % PAGE 2 \blank % \stoppostponing % % \startpostponing[+1] % PAGE +1 \blank % \stoppostponing % % \startpostponing[+2] % PAGE +2 \blank % \stoppostponing % % \starttext \dorecurse{4}{\input tufte \page} \stoptext
Hans
----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
_______________________________________________ ntg-context mailing list ntg-context@ntg.nl http://www.ntg.nl/mailman/listinfo/ntg-context
On 8/28/06, Hans Hagen
Peter Rolf wrote:
Hi Paul,
Paul Jones wrote:
Hello,
I have used Latex in the past and have the following code that inserts information on certain pages using afterpage. Is there some way to do a similar thing in context?
\setupoutput[pdf] \definelayer[info]
\setuplayer[info] [height=\paperheight,width=\paperwidth]
\setupbackgrounds[page] [background={text,info}]% info layer is above normal text layer
\def\WhichPage#1{% \def\docommand##1{\ifnum\pageno=##1\relax \setlayerframed[info][x=20mm,y=\dimexpr\paperheight-15mm,location=r] [background=color,backgroundcolor=white] {\tfb This page is inserted on page \number\pageno}\fi}% \rawprocesscommalist[#1]\docommand}%
... however if one wants to insert something after a specific page, there is
% \startpostponing [pagenumber] [+pageoffset] % % \startpostponing[2] % PAGE 2 \blank % \stoppostponing % % \startpostponing[+1] % PAGE +1 \blank % \stoppostponing % % \startpostponing[+2] % PAGE +2 \blank % \stoppostponing % % \starttext \dorecurse{4}{\input tufte \page} \stoptext
Hans
thank you so much. This is exactly what I was trying to do.
paul
participants (3)
-
Hans Hagen
-
Paul Jones
-
Peter Rolf