ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Wolfgang Schuster <schuster.wolfgang@googlemail.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Lost document background
Date: Mon, 24 May 2010 10:51:13 +0200	[thread overview]
Message-ID: <4BFA3E01.7020709@googlemail.com> (raw)
In-Reply-To: <4BFA3D59.9020605@googlemail.com>

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	other threads:[~2010-05-24  8:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-24  8:48 Wolfgang Schuster
2010-05-24  8:51 ` Wolfgang Schuster [this message]
2010-05-24  9:09   ` Hans Hagen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BFA3E01.7020709@googlemail.com \
    --to=schuster.wolfgang@googlemail.com \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).