Difference between revisions of "Command/setuplayout"
m (Text replace - "\[\[cmd:(.*)\|(.*)\]\]" to "{{cmd|$1}}") |
(Improve quite a few sections. Category Layout) |
||
Line 3: | Line 3: | ||
|attributes= | |attributes= | ||
}} | }} | ||
+ | |||
+ | __TOC__ | ||
== [[Help:Reference|Syntax]] == | == [[Help:Reference|Syntax]] == | ||
Line 189: | Line 191: | ||
== Description == | == Description == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | === Horizontal === | |
− | |||
− | |||
− | + | If the document is singlesided, then the 'outside' is the right side and the 'inside' is the left side. | |
− | |||
− | |||
− | |||
− | |||
− | + | The <code>width</code> parameter sets <code>\makeupwidth</code>, the width of the text area. | |
− | + | * <code>width=middle</code> solves the following equation to set the makeupwidth: | |
− | = | + | paperwidth = \backspace + \makeupwidth+ \cutspace |
+ | ** <code>backspace</code> is the distance from the inside edge of the paper to the edge of the text area. | ||
+ | ** <code>cutspace</code> is the width from the outside edge of the text area to the edge of the paper. If cutspace is set to 0, it is taken to be equal to the backspace. | ||
− | + | * if <code>width=fit</code>, then the calculation is like for <code>width=middle</code>, but with the following additions: | |
− | ==== | + | ** <code>leftmargin/rightmargin</code> => width of leftmargin/rightmargin area |
+ | ** <code>margin</code> => width of outer margin | ||
+ | ** <code>leftedge/rightedge</code> => width of leftedge/rightedge area | ||
+ | ** <code>*distance</code> (like leftmargindistance) => space separates * area from the inner | ||
+ | ** <code>horoffset</code> is applied after the various width calculations to shift everything bodily to the outside. | ||
− | + | == Comment == | |
− | == | ||
What is needed is a picture of a page with each of these layout parameters indicated. (see [[Layout]]) | What is needed is a picture of a page with each of these layout parameters indicated. (see [[Layout]]) | ||
− | |||
You can use the {{cmd|showframe}} macro to see the results of your layout. Just put the command before the \starttext and lines will be drawn on your document showing the different areas. | You can use the {{cmd|showframe}} macro to see the results of your layout. Just put the command before the \starttext and lines will be drawn on your document showing the different areas. | ||
− | + | == Grid Setups == | |
− | + | In MkIV, at least, a number of presets for the <code>grid</code> parameter were defined using {{cmd|definegridsnapping}}; they can be invoked by e.g. <code>\setuplayout[grid=normal]</code>. The presets are all combinations of the following options: | |
− | < | + | {| class=wikitable |
− | + | |- | |
− | + | | <code>none</code> || don't enlarge | |
− | + | |- | |
− | + | | <code>halfline</code> || enlarge by halfline/halfline | |
− | + | |- | |
− | + | | <code>line</code> || enlarge by line/line | |
− | + | |- | |
− | + | | <code>strut</code> || enlarge by ht/dp (default) | |
− | + | |- | |
− | + | | <code>first</code> || align to top line | |
− | + | |- | |
− | + | | <code>last</code> || align to bottom line | |
+ | |- | ||
+ | | <code>mindepth</code> || round depth down | ||
+ | |- | ||
+ | | <code>maxdepth</code> || round depth up | ||
+ | |- | ||
+ | | <code>minheight</code> || round height down | ||
+ | |- | ||
+ | | <code>maxheight</code> || round height up | ||
+ | |- | ||
+ | | <code>local</code> || use local interline space | ||
+ | |- | ||
+ | | <code>shift:-3tp</code> || vertical shift within box | ||
+ | |- | ||
+ | |} | ||
− | + | These are the presets and their definitions. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | {| class=wikitable | ||
+ | |- | ||
+ | | \definegridsnapping[normal] || [maxheight,maxdepth,strut] | ||
+ | |- | ||
+ | | \definegridsnapping[standard] || [maxheight,maxdepth,strut] | ||
+ | |- | ||
+ | | \definegridsnapping[yes] || [maxheight,maxdepth,strut] | ||
+ | |- | ||
+ | | | ||
+ | |- | ||
+ | | \definegridsnapping[strict] || [\v!maxdepth:0.8,maxheight:0.8,strut] | ||
+ | |- | ||
+ | | \definegridsnapping[tolerant] || [\v!maxdepth:1.2,maxheight:1.2,strut] | ||
+ | |- | ||
+ | | | ||
+ | |- | ||
+ | | \definegridsnapping[top] || [minheight,maxdepth,strut] | ||
+ | |- | ||
+ | | \definegridsnapping[bottom] || [maxheight,mindepth,strut] | ||
+ | |- | ||
+ | | \definegridsnapping[both] || [minheight,mindepth,strut] | ||
+ | |- | ||
+ | | | ||
+ | |- | ||
+ | | \definegridsnapping[broad] || [maxheight,maxdepth,strut,0.8] | ||
+ | |- | ||
+ | | \definegridsnapping[fit] || [maxheight,maxdepth,strut,1.2] | ||
+ | |- | ||
+ | | | ||
+ | |- | ||
+ | | \definegridsnapping[first] || [first] | ||
+ | |- | ||
+ | | \definegridsnapping[last] || [last] | ||
+ | |- | ||
+ | | \definegridsnapping[high] || [minheight,maxdepth,none] | ||
+ | |- | ||
+ | | \definegridsnapping[low] || [maxheight,mindepth,none] | ||
+ | |- | ||
+ | | \definegridsnapping[line] || [line] | ||
+ | |- | ||
+ | | \definegridsnapping[strut] || [strut] | ||
+ | |- | ||
+ | | | ||
+ | |- | ||
+ | | \definegridsnapping[max] || [maxdepth,maxheight,strut] | ||
+ | |- | ||
+ | | \definegridsnapping[min] || [mindepth,minheight,strut] | ||
+ | |- | ||
+ | |} | ||
+ | == Example == | ||
− | = | + | <context source=yes> |
+ | \setuppapersize[A10] | ||
− | |||
%% This is an example for showing the effect of the vertical parameters | %% This is an example for showing the effect of the vertical parameters | ||
%% top, topdistance, bottom, bottomdistance and topspace. | %% top, topdistance, bottom, bottomdistance and topspace. | ||
%% Just play around with these parameters. | %% Just play around with these parameters. | ||
+ | |||
+ | \showframe | ||
%% Show the top and the bottom with blue color: | %% Show the top and the bottom with blue color: | ||
− | + | \setupbackgrounds[header, footer][background=color, backgroundcolor=blue] | |
− | \setupbackgrounds[ | ||
− | \def\MyLength{ | + | \def\MyLength{10pt} |
\setuplayout[ | \setuplayout[ | ||
− | + | top=\MyLength, | |
− | top=\MyLength,topdistance=\MyLength, | + | topdistance=\MyLength, |
− | bottom=\MyLength,bottomdistance=\MyLength, | + | bottom=\MyLength, |
+ | bottomdistance=\MyLength, | ||
topspace=\dimexpr(\topheight + \topdistance), | topspace=\dimexpr(\topheight + \topdistance), | ||
height=fit] | height=fit] | ||
\starttext | \starttext | ||
− | + | \input thuan | |
− | |||
\stoptext | \stoptext | ||
− | + | </context> | |
− | </ | ||
− | |||
== See also == | == See also == | ||
− | [[Layout]] | + | * [[Layout]] |
− | + | * {{cmd|setuppapersize}} to set the paper size | |
− | + | * [[PaperSizes]] for a list of predefined paper sizes | |
== Help from ConTeXt-Mailinglist/Forum == | == Help from ConTeXt-Mailinglist/Forum == | ||
Line 305: | Line 337: | ||
{{Forum|{{SUBPAGENAME}}}} | {{Forum|{{SUBPAGENAME}}}} | ||
− | [[Category: | + | [[Category:Command/Layout|setuplayout]] |
+ | td>[[Command/value:name|name]] /code> || align to top line | ||
+ | |- | ||
+ | | |
Revision as of 11:10, 8 June 2012
\setuplayout
Contents
Syntax
Description
Horizontal
If the document is singlesided, then the 'outside' is the right side and the 'inside' is the left side.
The width
parameter sets \makeupwidth
, the width of the text area.
width=middle
solves the following equation to set the makeupwidth:
paperwidth = \backspace + \makeupwidth+ \cutspace
backspace
is the distance from the inside edge of the paper to the edge of the text area.cutspace
is the width from the outside edge of the text area to the edge of the paper. If cutspace is set to 0, it is taken to be equal to the backspace.
- if
width=fit
, then the calculation is like forwidth=middle
, but with the following additions:leftmargin/rightmargin
=> width of leftmargin/rightmargin areamargin
=> width of outer marginleftedge/rightedge
=> width of leftedge/rightedge area*distance
(like leftmargindistance) => space separates * area from the innerhoroffset
is applied after the various width calculations to shift everything bodily to the outside.
Comment
What is needed is a picture of a page with each of these layout parameters indicated. (see Layout)
You can use the \showframe macro to see the results of your layout. Just put the command before the \starttext and lines will be drawn on your document showing the different areas.
Grid Setups
In MkIV, at least, a number of presets for the grid
parameter were defined using \definegridsnapping; they can be invoked by e.g. \setuplayout[grid=normal]
. The presets are all combinations of the following options:
none |
don't enlarge |
halfline |
enlarge by halfline/halfline |
line |
enlarge by line/line |
strut |
enlarge by ht/dp (default) |
first |
align to top line |
last |
align to bottom line |
mindepth |
round depth down |
maxdepth |
round depth up |
minheight |
round height down |
maxheight |
round height up |
local |
use local interline space |
shift:-3tp |
vertical shift within box |
These are the presets and their definitions.
\definegridsnapping[normal] | [maxheight,maxdepth,strut] |
\definegridsnapping[standard] | [maxheight,maxdepth,strut] |
\definegridsnapping[yes] | [maxheight,maxdepth,strut] |
\definegridsnapping[strict] | [\v!maxdepth:0.8,maxheight:0.8,strut] |
\definegridsnapping[tolerant] | [\v!maxdepth:1.2,maxheight:1.2,strut] |
\definegridsnapping[top] | [minheight,maxdepth,strut] |
\definegridsnapping[bottom] | [maxheight,mindepth,strut] |
\definegridsnapping[both] | [minheight,mindepth,strut] |
\definegridsnapping[broad] | [maxheight,maxdepth,strut,0.8] |
\definegridsnapping[fit] | [maxheight,maxdepth,strut,1.2] |
\definegridsnapping[first] | [first] |
\definegridsnapping[last] | [last] |
\definegridsnapping[high] | [minheight,maxdepth,none] |
\definegridsnapping[low] | [maxheight,mindepth,none] |
\definegridsnapping[line] | [line] |
\definegridsnapping[strut] | [strut] |
\definegridsnapping[max] | [maxdepth,maxheight,strut] |
\definegridsnapping[min] | [mindepth,minheight,strut] |
Example
\setuppapersize[A10] %% This is an example for showing the effect of the vertical parameters %% top, topdistance, bottom, bottomdistance and topspace. %% Just play around with these parameters. \showframe %% Show the top and the bottom with blue color: \setupbackgrounds[header, footer][background=color, backgroundcolor=blue] \def\MyLength{10pt} \setuplayout[ top=\MyLength, topdistance=\MyLength, bottom=\MyLength, bottomdistance=\MyLength, topspace=\dimexpr(\topheight + \topdistance), height=fit] \starttext \input thuan \stoptext
See also
- Layout
- \setuppapersize to set the paper size
- PaperSizes for a list of predefined paper sizes
Help from ConTeXt-Mailinglist/Forum
All issues with:
- setuplayout on the mailing list (all results)
- setuplayout on the mailing list (subject only)
- setuplayout on stack exchange
- setuplayout in ConTeXt's source
td>name /code> || align to top line |- |