Re: [NTG-context] Symmetrical layer positioning?
Tuesday, July 17, 2007 Wolfgang Schuster wrote: > 2007/7/17, Giuseppe Bilotta <[EMAIL PROTECTED]>: >> >> Apparently, I mistook what the doublesided option does for >> layers. I've currently solved the problem in the following >> way: > \definelayer[test][doublesided=yes] > \setlayer[test][odd][..,..=..,..]{content} > \setlayer[test][even][..,..=..,..]{content} Indeed, but if I want both sides to always have the same content, I need to double-code every content insertion, or write a macro to do that for me. It just moves the trickery somewhere else :) My expectation was that when \setlayer is used without specification on a doublesided layer, it would set the content for both sides. Alternatively, a way to specify (even via presets) a position which is page-parity dependent would be a good thing. -- 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 ___
Re: [NTG-context] Symmetrical layer positioning?
2007/7/17, Giuseppe Bilotta <[EMAIL PROTECTED]>: > 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: \definelayer[test][doublesided=yes] \setlayer[test][odd][..,..=..,..]{content} \setlayer[test][even][..,..=..,..]{content} Wolfgang > \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 > ___ > ___ 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 ___
Re: [NTG-context] Symmetrical layer positioning?
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 ___
Re: [NTG-context] Symmetrical layer positioning?
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? -- 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 ___
Re: [NTG-context] Symmetrical layer positioning?
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 > I can of course do it manually, either by changing the layer > position on each page or by using two layers instead of one, > but I wanted to know if there was a more straightforward way > that I was missing. Here is an example of using two different layers: http://wiki.contextgarden.net/Alternating_backgrounds_and_repeating_layers Aditya ___ 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 ___
[NTG-context] Symmetrical layer positioning?
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? I can of course do it manually, either by changing the layer position on each page or by using two layers instead of one, but I wanted to know if there was a more straightforward way that I was missing. -- 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 ___