Changes

Jump to navigation Jump to search
3,934 bytes added ,  20:10, 8 June 2020
no edit summary
= Headers with centered content=
ConTeXt offers the possibility to have mirrored headers (for odd and even pages); content can be in two parts, at the inner and outer margin of each page. But how do you get a header that will have one part of its content centered and one part in the outer margin? (This is a common setup for books: chapter title centered, page number in outer margin.) Hans posted this solution to the list:
</texcode>
The use of the TeX primitive macros {{cmd|rlap }} and {{cmd|llap }} allows centering of content.Note that {{cmd|pagenumber}} gets you the number prior to conversion; if you're using {{cmd|setupuserpagenumber}}[numberconversion=...] then you'll want to use {{cmd|userpagenumber}} instead. = Using capitals = In the previous example, the chapter title and the section title were fetched with the macro {{cmd|getmarking}} which wraps around {{cmd|fetchmark}}. However, in case you need a raw version of the mark, say for instance to put it uppercase, you may use this setup instead: <texcode> \startsetups[text a] \rlap{\pagenumber} \hfill \expanded{\uppercase{\fetchmark[chapter][first]}} \hfill \llap{whatever}\stopsetups \startsetups[text b] \rlap{whatever} \hfill \expanded{\uppercase{\fetchmark[section][first]}} \hfill \llap{\pagenumber}\stopsetups </texcode>  You can replace {{cmd|uppercase}} by {{cmd|WORD}} and so on. = Marginal headings and centered headings = The following file gives a way to achieve marginal and centered headings for doublesided documents. Experiment to achieve other effects! <texcode> % output=pdf interface=en \setuppapersize [A5][A4] \newdimen\Margin\Margin=3cm \newdimen\MarginRaise\MarginRaise=56ex \setuplayout[width=middle, height=middle, footer=3\bodyfontsize, header=\bodyfontsize, headerdistance=\bodyfontsize, bottom=3\bodyfontsize, location={middle,doublesided}, margin=\Margin, marking=on] \setuppagenumbering[alternative=doublesided, location={footer,middle}] \setuptexttexts[margin][][\setups{text a}][\setups{text b}][]\setuptext[style=\tf,state=high] \startsetups[text a]\raise\MarginRaise\hbox{\vtop{\hsize=\Margin% \startalignment[right] \getmarking[chapter] \stopalignment}}\stopsetups \startsetups[text b]\raise\MarginRaise\hbox{\vtop{\hsize=\Margin% \startalignment[left] \getmarking[section] \stopalignment}}\stopsetups \setupbottomtexts[pagenumber]\setupbottom[style=\tf,state=high] \setupfootertexts%[][\setups{text c}][\setups{text d}][]\setupfooter[style=\tf, state=high] \startsetups[text c] \midaligned{\raise2\bodyfontsize\hbox{\getmarking[chapter]}}\stopsetups \startsetups[text d] \midaligned{\raise2\bodyfontsize\hbox{\getmarking[section]}}\stopsetups \setupinmargin[align=inner, style=\tfx\setupinterlinespace] \showframe \starttext \chapter{Chapter Knuth Testing} \section{Section Knuth Testing}\dorecurse{20}{\input knuth\par\ } \stoptext </texcode> = Skipping headers or footers = You can suppress or bypass a header or footer on a chapter page like this:<texcode>% with header=high the text area of the page will extend up % into the space where the header normaly sits\setuphead[chapter][header=high,footer=none]  % header=empty leaves the header area intact, % but does not fill it with any text\setuphead[chapter][header=empty,footer=none] </texcode>Works only if the head title starts a new page. Since section does not do this by default, then you must write<texcode>\setuphead[section][page=yes,header=high,footer=none]</texcode> The options for 'header=' and 'footer=' are none,empty,high,nomarking. = Substituting a shorter lemma for a ''section'' header = Given a global setup such as <texcode>\setupheadertexts%[][section][chapter][]</texcode> Sometimes the ''section'' title is too long to fit in the header. Instead of manually inserting a new \setupheadertexts comamnd you may use something like <texcode>\startsection [title={Here is a section title too long to fit in the header}, marking={Here is a section title}]</texcode> Similarly, you can send shorter lemmas to the table of contents or to bookmarks. So the relevant keys include <texcode>title marking list bookmark</texcode> = Further reading = * [[Page numbering in words]] [[Category:Basics]]

Navigation menu