Hello Wizards, my multi page (and multicolumn) table exceeds the last page by 2 rows. Is there a way to make last column a bit longer? Here is a minimal example: ------------------------------------------ \startbuffer[table] \bTABLE[split=yes] \dorecurse{138}{\bTR\bTD cell #1\eTD\eTR} \eTABLE \stopbuffer \starttext \startcolumns \getbuffer[table] \stopcolumns \stoptext ------------------------------------------ Thanks Vit
Hi Vit, Vit Zyka wrote:
Hello Wizards,
my multi page (and multicolumn) table exceeds the last page by 2 rows. Is there a way to make last column a bit longer? Here is a minimal example:
The underlying problem is that you have to enlarge the height of page 2. I don't know how that is 'normally' done, but perhaps it gives someone else a hint ? Cheers, Taco
Taco Hoekwater wrote:
Hi Vit,
Vit Zyka wrote:
Hello Wizards,
my multi page (and multicolumn) table exceeds the last page by 2 rows. Is there a way to make last column a bit longer? Here is a minimal example:
The underlying problem is that you have to enlarge the height of page 2. I don't know how that is 'normally' done, but perhaps it gives someone else a hint ?
It may be done by \adaptlayout[2][height=+1cm] but it does not solve the problem. Natural tables (IFAIK) are splitted at one moment as a whole to one fix (page) height. If I enlarge the page (where \bTABLE) then every column will be longer. We need some option (or command inside table) that say: hey, naturaltable-split-mechanism, start to split to different value. There is some \extratblsplitheight in core-ntb, but I did not cook too deep to understand it. Vit
Cheers, Taco
Taco Hoekwater wrote:
Hi Vit,
Vit Zyka wrote:
Hello Wizards,
my multi page (and multicolumn) table exceeds the last page by 2 rows. Is there a way to make last column a bit longer? Here is a minimal example:
The underlying problem is that you have to enlarge the height of page 2. I don't know how that is 'normally' done, but perhaps it gives someone else a hint ?
Answer to my own question: Question: Imagine a table (\bTABLE) spanning several pages. Moreover the table is inside multicolumn (\startcolumn). How to make some column longer (having more rows in some column)? (Column height is given by page height.) Solution: 1. Make page heigher (as high as the highest column) on every page where the table is: \setuplayout[lines=..] 2. Insert blank rows to appropriate table places to fill the columns: \dorecurse{..}{\bTR\bTD\strut\eTD\eTR} Remarks: 1. \adaptlayout{page}{height=+...} has limited capability of making page heigher (not overcomes footer) so \setuplayout is more flexible. 2. Forsing column break by \bTR[after=\column]\bTD...\eTD\eTR works but add some spurious space on the top of next column. I was not able to remove it even experimenting with my own \installcolumnbreakhandler {MUL} {forse} {...} and using \bTR[after={\columnbreak[forse]}]\bTD...\eTD\eTR Spurious space demonstration: -------------- \startbuffer[table] \bTABLE[split=yes] \dorecurse{20}{\bTR\bTD cell #1\eTD\eTR} \bTR[after={\columnbreak[yes]}]\bTD between \eTD\eTR \dorecurse{100}{\bTR\bTD cell #1\eTD\eTR} \eTABLE \stopbuffer \starttext \startcolumns \getbuffer[table] \stopcolumns \stoptext -------------- Vit
participants (2)
-
Taco Hoekwater
-
Vit Zyka