Changes

Jump to navigation Jump to search
983 bytes added ,  08:28, 2 July 2022
m
Text replacement - "pragma-ade.com" to "pragma-ade.nl"
__TOC__
 This page focus focuses on '''Basics of page design and layout'''. You can also be interested in:* '''[http://context.aanhet.net/svn/contextman/context-reference/en/co-pagedesign.pdf Layout and page design manual chapter]''' It will allow you to go into more detail* '''continue on [[Presentations#Further reading|further topics]]''' and associated features, widgets, multimedia* '''like [[LayersPresentations|Presentations layout]]''' (absolute positioning etc.)* ''', [[ImpositionVisual_Debugging|Visual debugging]]''', making booklets, to arrange pages in proper order for printing.* '''[[Working on GridFloating Objects]]''' (working with fixed distances)* '''[[Alternating backgrounds and repeating layers]]''' like Watermarks* , [[Columns]]* , [[Visual DebuggingLayers]]* , [[Floating_Objects|Floating objectsGrid typesetting]]* , [[Hiding ContentPDF Boxes]]. But first, one needs to understand the basics of page layout by ConTeXt.
= Typesetting areas =
= Defining the layout =
Positioning the areas is by setting the following dimensions using {{cmd|setuplayout|2=[backspace=5cm,...]}}. The dimensions are mentioned in order of how ‘primitive’ they are: e.g. altering the {{code|topspace}} pushes around all other vertical dimensions, but altering the {{code|header}} affects only the {{code|headerdistance}} and the {{code|textheight}}.
You When you define a page layout, it's always define a right pagethat you're defining; if you use a double page layout, 'right' and 'left' values are mirrored on a left page. Doublesided typesetting is activated with {{cmd|setuppagenumbering|2=[alternative=doublesided]}}.
# Set the {{code|backspace}} and {{code|width}}, and the {{code|topspace}} and {{code|height}}. The {{code|width}} is the width of the main typesetting area; the {{code|backspace}} is its distance from the left edge of the page. The {{code|height}} is the distance ''from the top of the header to the bottom of the footer''; the {{code|topspace}} is the distance from the top edge of the page to the top of the header.
</texcode>
== Let's gather examples here == ; Cover pages: [[Cover Pages]] (2013, 2019); Other example : [[Example photo page layout ]] (2010) =[[Imposition]] =
* Imposition is a prepress printing process. It consists of the arrangement of the printed product’s pages on the printer’s sheet, in order to obtain faster printing, simplify binding and reduce paper waste ([[Example MetaFun Cover Pagehttps://en.wikipedia.org/wiki/Imposition wikipedia]] (2019) with MetaFun.* [[Simple Cover Page]] (2013)* [[Example photo We built a dedicated page layout]] (2010)* about '''[[A Very Simple Cover PageImposition]] (2009)''', because making booklets, to arrange pages in proper order for printing it's a topic in itself. This is where you will use {{cmd|setuppaper}} and {{cmd|setuparranging}}.
= Multiple layouts =
If you need to use different layouts in some parts of the document, you can set up a global layout, and then define additional named layouts for the deviating parts. You only need to specify the dimensions that differ: unspecified dimensions will be inherited from the global layout.
To switch to a different layout, call it up in the appropriate place in the document. To revert back to the global layout, use {{cmd|setuplayout|2=[reset]}}.
<texcode>
</texcode>
To specify in advance that you want to change layouts starting from page 4 (e.g.), use {{cmd|definelayout|2=[4][...]}}. Resetting the layout must be done explicitly; else, the new layout will be used until the end of the document.
<texcode>
For more details and actual state see mailing list and [http://wiki.contextgarden.net/User_talk:Zenlima Bug Layoutchange inside page while duplexmode].
</div>
 
= Advanced features =
 
* To allow Acrobat Reader users (among others?) to make layers visible/invisible at will, add the following command at the start of your file:
<texcode>
\showlayoutcomponents
</texcode>
 
* If you have a certain run of text that you want to keep together, you can test for the number of lines available on the current page with {{cmd|testpage|[''n'']}}, where ''n'' is the number of lines required. If there are not ''n'' lines available, a page break will be inserted at the location of the {{cmd|testpage}} command.
 
* If you need absolute positioning of objects (text, pictures) on the page, but ad-hoc rather than systematic, the [[Layers]] mechanism is more suitable.
 
* For layout from a [[Formatting Objects|XML/FO]] perspective, with some descriptive pictures, see At [http://getfo.sourceforge.net/context_xml/index.html Paul Tremblay's] [[XML]] ConTeXt site.
= Table of Parameters =
The first colum column is the name by which the variable is set in {{cmd|setuplayout}}. The second column is the name by which TeX stores the variable. This name is usually the same, but sometimes different; knowing it allows you to invoke it with code like <code>The paper's height is \the\paperheight.</code> Any remarks (usually a short description) are given in the third column.
{| class=wikitable
'''Note:'''
*width=middle<codetexcode>
if cutspace == 0pt then
cutspace = backspace
end
makeupwidth = paperwidth- backspace -cutspace
</codetexcode> *width=fit<codetexcode>
if cutspace == 0pt then
cutspace = backspace
end
makeupwidth = makeupwidth - rightmargindistance-rightmarginwidth- rightedgedistance-rightedgewidth- scratchdimen
</codetexcode
* otherwise:
<codetexcode>
makeupwidth=width
if cutspace == 0pt then
pass
end
</codetexcode>
(From {{src|page-lay.mkiv}}.)
{{Getting started navbox}}= Further reading =  * '''[[Presentations]]''': specifics requirements, specific pages (widgets, multimedia, ...)* [[Documentation|Manuals about layout]], and noticeably:** The basics with '''[http://context.aanhet.net/svn/contextman/context-reference/en/co-pagedesign.pdf Page design & Layout chapter]''' from the reference manual (2011)** The more advance '''[http://www.pragma-ade.nl/general/manuals/details.pdf It's in the Details]''' manual (2015), including grid typesetting.* '''[[Visual Debugging#Layout|Visual Debugging]]''': can greatly facilitate the set up of your layout.* After the layout, we can usually focus on the following subjects:** '''[[Floating Objects]]'''** '''[[Columns]]'''** '''[[Layers]]''', for absolute positioning of objects on the page, background, foreground etc.)** '''[[Grid typesetting]]''' (working with fixed distances)** '''[[Delimiter]]''', master line break and page break** '''[[Hiding Content]]'''* About PDF format** [[PDF Boxes]]: the size of PDF pages can have different meanings – e.g. the visible page, the printed page, the cropped printed page. ConTeXt can define the set of boxes defined by the PDF standard** [[PDF Print Options]]** [[Viewer Layers]] PDF has a concept of layers that you can enable and disable (at least in a few viewers). This has nothing to do with ConTeXt’s [[Layers]].** [[PDF/A]], ConTeXt can create PDF/A compliant outputs** [[PDFX]], ConTeXt can create PDF/X compliant outputs, the ISO standard.* For layout from a [[Formatting Objects|XML/FO]] perspective, with some descriptive pictures, see At [http://getfo.sourceforge.net/context_xml/index.html Paul Tremblay's] [[XML]] ConTeXt site. 
[[Category:ConTeXt-IssuesLayout]]

Navigation menu