\definemeasure[xheight][0.1in]
\definemeasure[base][3\measured{xheight}]
% Since all distances are in terms of base units, specify the paper size in those
% terms as well.
\definepapersize[slide][width=26\measured{base},height=20\measured{base}]
\setuppapersize[slide]
\setupinterlinespace[line=\measure{base}]
\setuplayout
[
topspace=2\measured{base},
header=\zeropoint,
headerdistance=\zeropoint,
height=middle, % Space for 20-4=16 lines
footerdistance=\zeropoint,
footer=\zeropoint,
bottomspace=2\measured{base},
%
cutspace=2\measured{base},
leftmargin=\zeropoint,
leftmargindistance=\zeropoint,
width=middle, % space for 26-4=22 col
rightmargindistance=\zeropoint,
rightmargin=\zeropoint,
backspace=2\measured{base}
grid=yes,
]
\showframe
\showgrid
\starttext
\input tufte
\stoptext
I'm attaching the pdf output.
On Wed, 25 May 2022, Stefan Nedeljkovic via ntg-context wrote:
> Dear list,
>
> My adventures into the world of grids continue. In the linked file
> (slide_grid_overlay.pdf) there are two things I cannot yet achieve:
>
> 1. I want the baseline grid to evenly (vertically) divide the text
> area, but my code produces a smaller height of the first line and an
> additional space at the bottom.
You did not set footerdistance to zero. So, that takes up some space.
> 2. The number of columns is 21.5, that is the first column is 0.5 units
> wide and the rest are 1 unit wide.
I believe that columns has to be an integer. Why do you want fractional columns? Columns are useful because you can say:
\setlayer[name][line=2,column=3]{....}
for absolute positioning of layers. So, you can always use:
\setlayer[name][line=2,column=3,x=0.5\measured{base}]{....}
to move everything to the right by 0.5 units.
Another option is not to use columns at all, and simply do:
\setlayer[name][line=2,x=3.5\measured{base}]
which will place the layer at 3.5 units from the left edge of the text area.
> Here is what I got right now:
Currently your textwidth is not a multiple of base units. I have tweaked the code below so that it is.
\definemeasure[xheight][0.1in]
\definemeasure[base][3\measured{xheight}]
% Since all distances are in terms of base units, specify the paper size in those
% terms as well.
\definepapersize[slide][width=26\measured{base},height=20\measured{base}]
\setuppapersize[slide]
\setupinterlinespace[line=\measure{base}]
\setuplayout
[
topspace=2\measured{base},
header=\zeropoint,
headerdistance=\zeropoint,
height=middle, % Space for 20-4=16 lines
footerdistance=\zeropoint,
footer=\zeropoint,
bottomspace=2\measured{base},
%
cutspace=2\measured{base},
leftmargin=\zeropoint,
leftmargindistance=\zeropoint,
width=middle, % space for 26-4=22 col
rightmargindistance=\zeropoint,
rightmargin=\zeropoint,
backspace=2\measured{base},
%
columns=22,
columndistance=1pt,
%
grid=yes,
]
\showframe
\showgrid
\starttext
\input tufte
\stoptext
Aditya