Monday, July 16, 2007 Giuseppe Bilotta wrote: > Monday, July 16, 2007 Aditya Mahajan wrote:
>> On Mon, 16 Jul 2007, Giuseppe Bilotta wrote: >>> Hello all, >>> >>> is there a "secret power switch" to tell ConTeXt that a >>> particular layer has different positioning depending on >>> wether it's on a left or right page? >> You can possible use setups and use \doifoddpageelse to set the >> layers. See >> http://archive.contextgarden.net/thread/20061102.171506.2fa793e2.en.html > Thanks a lot. I don't know if using presets is actually > going to reduce the coding, though. > In the mean time, I've found that layers have a doublesided > option. This apparently allows you to override the > left/right settings of a layer, so I tried > \definelayer[title][ > x=\dimexpr\backspace+\wdall-\wdtit, > y=\topspace, > width=\wdtit, > height=\httit, > state=repeat, > doublesided=true, > ] > \setuplayer[lefttitle][ > x=\backspace, > ] > \definelayer[desc][ > x=\backspace, > y=\topspace, > width=\wddesc, > height=\htdesc, > state=repeat, > doublesided=true, > ] > \setuplayer[leftdesc][ > x=\dimexpr\backspace+\wdall-\wddesc, > ] > \definelayer[figs][ > x=\dimexpr\backspace+\wdall-\wdfig, > y=\dimexpr\topspace+\makeupheight-\htfig, > width=\wdfig, > height=\htfig, > ] > \setuplayer[leftfigs][ > x=\backspace, > ] > \setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight] > However, the 'main' setup is always used, the left one is > never used. Am I doing something wrong? Apparently, I mistook what the doublesided option does for layers. I've currently solved the problem in the following way: \unexpanded\def\titlexpos{% \ifodd\realpageno\dimexpr\wdinside+\wdall-\wdtit\else\wdinside\fi } \definelayer[title][ x=\titlexpos, y=\topspace, width=\wdtit, height=\httit, ] \unexpanded\def\descxpos{% \ifodd\realpageno\wdinside\else\dimexpr\wdinside+\wdall-\wddesc\fi } \definelayer[desc][ x=\descxpos, y=\topspace, width=\wddesc, height=\htdesc, ] \unexpanded\def\figsxpos{% \ifodd\realpageno\dimexpr\backspace+\wdall-\wdfig\else\wdinside\fi } \definelayer[figs][ x=\figsxpos, y=\dimexpr\topspace+\makeupheight-\htfig, width=\wdfig, height=\htfig, ] \setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight] However, this solution doesn't strike me as particularly elegant. I've seen in page-lyr.tex that support for left/right layers is currently in progress, but if I read the code correctly it just creates three layers (name, leftname, rightname) and they have to be filled individually. It would be nice to have a simpler interface to repeated layers with position recalculated on each page. -- Giuseppe "Oblomov" Bilotta ___________________________________________________________________________________ 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 : https://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________