* table splitting
@ 1999-08-14 10:38 Hans Hagen
1999-08-15 10:18 ` Wybo Dekker
0 siblings, 1 reply; 2+ messages in thread
From: Hans Hagen @ 1999-08-14 10:38 UTC (permalink / raw)
Hi Wybo,
You problem was relatex to an asynchronous \pagegoal (primitive tex
dimension) combined with the fact that a par entry in a table was not
taken into account in height calculations (it was considered to be a
line). BTW, as long as you don't use vertical rules, \starttabulate is
the better alternative).
Now, here we go:
%%%%%%%%%%%% don't use [top] here
\dorecurse{160}{Just some text before the float. }
\startpostponing
\splitfloat
{\placefigure{this is a floating table}}
{\starttables[|lp(50mm)|l|]
\NC \startitemize[packed]
\item first item
\item second item
\item third item
\item last item
\stopitemize \NC right column text \NC\MR
\NC left column text \NC right column text \NC\MR
etc etc
%%%%%%%%%%% add this (all of it!) to cont-new.tex %%%%% make sure it's
surrounded by
\unprotect
\protect
%%%%%%%%% Hack for Wybo:
\def\douitstellen%
{\the\everytopofpage
\ifinuitstellen\else\ifcase\nofpostponedblocks\else % The \nof-test
is
\global\pagetotal\!!zeropoint % recently added
\global\inuitstellentrue % definitely
needed
\dorecurse{\nofpostponedblocks} % else we can
loose
{\haalbuffer[buf-\recurselevel]} % or disorder
floats
\doflushfloats % new but potential dangerous % and that is
something
\doglobal\newcounter\nofpostponedblocks % we don't want,
do we?
\global\inuitstellenfalse % Anyhow,
'uitstellen'
\fi\fi} % is still
suboptimal.
\newdimen\TABLEparheight
% adapted table macros
\def\BeginTableParBox#1%
{\setbox\scratchbox=\vtop\bgroup % \setbox added
\hsize=#1
\normalbaselines
\let~=\!ttTie
\let\-=\!ttDH
\blanko[\v!blokkeer] % added
\the\EveryTableParBox}
\def\EndTableParBox%
{\removelastskip % added
%\MakeStrut{0pt}{\StrutDepthFactor\StrutUnit} % removed
\egroup % finishes the \vtop begun by \BeginTableParbox
\getboxheight\scratchdimen\of\box\scratchbox\relax % added
\ifdim\scratchdimen>\TABLEparheight % added
\global\TABLEparheight=\scratchdimen % added
\fi % added
\box\scratchbox}
%
\def\handleTABLEbreak#1#2%
{\ifsplittables
\setbox0=\hbox{\AugmentedTableStrut{#1}{#2}}%
\getboxheight\dimen0\of\box0\relax
\ifdim\TABLEparheight>\dimen0 % new
\dimen0=\TABLEparheight % new
\global\TABLEparheight=\!!zeropoint % new
\fi % new
\ifTABLEgrayline \else
\global\advance\TABLEheight by \dimen0
\fi
\ifTABLEinbreak
\global\let\beforeTABLEline=\empty
\gdef\afterTABLEline{\TABLEnoalign{\nobreak}}%
\else
\dimen2=\TABLEheight
\advance\dimen2 by \dp\strutbox
\advance\dimen2 by \TABLEtailheight
\advance\dimen2 by \TABLEcaptionheight
\advance\dimen2 by \lineheight % we're ahead
\ifdim\dimen2>\TABLEmaxheight
\gdef\beforeTABLEline%
{\setTABLEforce\TABLEforcelastrow}%
\gdef\afterTABLEline%
{\TABLEnoalign
{\nobreak
\global\TABLEinbreaktrue}%
\TABLEtail
\TABLEnoalign
{\goodbreak
\calculatemaxTABLEheight\nocalculatemaxTABLEheight
\removeTABLEtopskip
\setTABLEaction\TABLEunknown
\setTABLEforce \TABLEunknown}%
\TABLEhead
\TABLEnoalign
{\nobreak
\global\TABLEinbreakfalse
\setTABLEforce\TABLEforcefirstrow}}%
\else
\global\let\beforeTABLEline=\empty
\gdef\afterTABLEline{\TABLEnoalign{\nobreak}}%
\fi
\fi
\else
\global\let\beforeTABLEline=\empty
\gdef\afterTABLEline{\TABLEnoalign{\nobreak}}%
\fi}
This should work (it does here).
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.nl
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: table splitting
1999-08-14 10:38 table splitting Hans Hagen
@ 1999-08-15 10:18 ` Wybo Dekker
0 siblings, 0 replies; 2+ messages in thread
From: Wybo Dekker @ 1999-08-15 10:18 UTC (permalink / raw)
Cc: ntg-context
Hans Hagen wrote:
> %%%%%%%%% Hack for Wybo:
>
> \def\douitstellen%
This looks like doing exactly what I meant. Thank you!
--
Hartelijke groet, Wybo
--
__Servalys Analytical Chemistry Services__
Wybo H. Dekker wybo@servalys.hobby.nl
Deilsedijk 60 www.hobby.nl/~servalys
4158 CH Deil tel +31-345-652164
The Netherlands fax +31-345-652383
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~1999-08-15 10:18 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-08-14 10:38 table splitting Hans Hagen
1999-08-15 10:18 ` Wybo Dekker
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).