In a textbook I am looking to place a large left margin at every page of each chapter. At left printed pages a left margin and at right printed pages a right margin, so like a double sided construction. In this margin I would like to place: 1. Keywords and small descriptions to emphasize some text from the textflow 2. Figures 3. An expansion of a table that is placed in the main textflow but that needs to cover a wider range then the text area so it expands into the margin What is the the easiest way to achieve this? Jeroen
Jeroen schrieb am 19.02.2024 um 14:14:
In a textbook I am looking to place a large left margin at every page of each chapter. At left printed pages a left margin and at right printed pages a right margin, so like a double sided construction. In this margin I would like to place:
You can use a custom layout with a narrow text block and a wide rightmargin area.
1. Keywords and small descriptions to emphasize some text from the textflow
Use the \inright etc. commands or create your own commands based on \inright, look at the margindata mechanism for more information.
2. Figures
You can change the default location of figures from the text block to the margin area.
3. An expansion of a table that is placed in the main textflow but that needs to cover a wider range then the text area so it expands into the margin
In the example below I added a check to the table float to either center the small tables or align wide tables on the inner margin which extend into the margin area. While this method works in a simple example for a real document I suggest to create a clone of the table float (e.g. widetable) because the method in the example can lead to problems/limitations.
What is the the easiest way to achieve this?
%%%% begin example \setuppagenumbering [alternative=doublesided] \setuplayout [width=10cm, rightmargin=6cm] \showframe \def\FloatTableALignment {\dowithnextbox {\ifdim\nextboxwd>\textwidth \doalignedline{inner}{\flushnextbox}% \else \flushnextbox \fi} \hbox} \setupfloat[table][command=\FloatTableALignment] \setupfloat[figure][default=rightmargin] \starttext \inright{Lorem ipsum \unknown}\samplefile{lorem} \startplacefigure \externalfigure[dummy][width=\rightmarginwidth] \stopplacefigure \samplefile{lorem} \startplacetable \bTABLE \bTR \bTD one \eTD \bTD two \eTD \bTD three \eTD \eTR \eTABLE \stopplacetable \samplefile{lorem} \startplacetable \bTABLE[textwidth=\dimexpr\textwidth+\rightmarginwidth+\rightmargindistance\relax,option=stretch] \bTR \bTD one \eTD \bTD two \eTD \bTD three \eTD \eTR \eTABLE \stopplacetable \samplefile{lorem} \stoptext %%% end example Wolfgang
Am 19.02.24 um 14:14 schrieb Jeroen:
In a textbook I am looking to place a large left margin at every page of each chapter. At left printed pages a left margin and at right printed pages a right margin, so like a double sided construction. In this margin I would like to place:
1. Keywords and small descriptions to emphasize some text from the textflow 2. Figures 3. An expansion of a table that is placed in the main textflow but that needs to cover a wider range then the text area so it expands into the margin
What is the the easiest way to achieve this?
Generally, you use \inmargin, \inouter etc. Additional to Wolfgang’s suggestions: If you need sidefloats that cover not only the margin but should decrease the text width, you can move sidefloats into the margin like: \startplacefigure[title={},location=outer] \offset[rightoffset=-\marginwidth]{\externalfigure[cow][width=0.5\textwidth]} \stopplacefigure Beware: it doesn’t work well with captions (I’ve still no solution that always works), and \offset understands only rightoffset and leftoffset, not outeroffset. The example is on a right page; you must “pull” the image into the margin (rightmargin with negative value), if you try „pushing“ with leftoffset=\marginwidth, the text flow is wrong. Hraban
participants (3)
-
Henning Hraban Ramm
-
Jeroen
-
Wolfgang Schuster