Nigel King wrote:
Hi,
This has bugged me for a number of years and I have only just realised the exact cause. Previous requests to solve table and figure spacing problems are all due to this I think. Basically the hyperreference in the first character of a paragraph mangles the paragraph formatting.


Below is a minimum (I think) file which demonstrates the problem very clearly.

\setupinteraction[state=start]
\setupwhitespace[big]
\starttext
\input tufte
\startbuffer[]
\bTABLE[width=2.5in]
\bTR \bTD \input tufte \eTD\eTR
\eTABLE
\stopbuffer
\placetable
  [right]
  [tab:1]
  {A Table}
  {\getbuffer[]}
\input tufte

\in{Table}[tab:1] this paragraph does not format correctly because the hypereference is at the first character of the paragraph. Note that the spacing (before) is incorrect as well as the width.

T\in{able}[tab:1] this paragraph does format correctly because the hypereference is not using the first character of the paragraph.

\input tufte
\stoptext

add this to cont-new.tex

\newbox\@@dlhbox

\def\dontleavehmode
  {\ifhmode\else \ifmmode\else
     \setbox\@@dlhbox\hbox
       {\mathsurround\zeropoint\everymath\emptytoks$ $}\unhbox\@@dlhbox
   \fi \fi}

and test this on all kind of docs! I'm not that sure about the patch.

The reason for this is that we cannot use \noindent or \indent and \leavevmode.

Future versions of pdftex will provide \quitvmode for this purpose, which has no side effects.

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.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------

_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to