Am 24.05.10 10:48, schrieb Wolfgang Schuster:
Hi Hans,

under certain circumstances document backgrounds (overlays) are lost.


A minimum real live example is this:

\definelayer[test]

\setuppagenumbering[alternative=doublesided]

\setupmakeup[standard][doublesided=empty] % background is lost
%\setupmakeup[standard][doublesided=yes]   % background is visible

\startsetups[test]
\setlayer[test][hoffset=4cm,voffset=7cm]{\tfd text}
\stopsetups

\setupbackgrounds[page][background=test,setups=test]

\starttext

\startstandardmakeup
text
\stopstandardmakeup

test

\stoptext

With 'doublesided=yes' the background is visible but with 'doublesided=empty'
no background is shown.


I spend a few hours to find the reason for this and i was able to produce
a shorter example:

\defineoverlay[test][\tfd text]

\setupbackgrounds[page][background=test,state=repeat]

\starttext

text\page\page[blank]\null\page

%\chardef\pageornamentstate\zerocount

text

\stoptext

The problem is that '\page[blank]' sets \pageornamentstate at global level to '1'.

I found a fix in a older ConTeXt version:

\def\dopagebreak[#1]% so, page ornaments are reset after a pagebreak command, unless set
  {\bgroup
   \flushnotes
   \edef\prevrealpageno{\the\realpageno}%
   \ifcase\pageornamentstate \or
     % disable reset after shipout
     \global\chardef\pageornamentstate\plustwo
   \fi
   \iffirstargument % or if empty i.e. []
     \executepagebreakhandlers{#1}%
   \else % so, no pagebreak when \pagebreak[] ! ! !
     \executepagebreakhandler\v!yes
   \fi
   \ifnum\prevrealpageno<\realpageno
     \global\chardef\pageornamentstate\zerocount
   \fi
   \egroup}

Wolfgang

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to