* \in{hyperref}[tableref] at first char of line causes misplaced paragraph
@ 2004-11-11 16:58 Nigel King
2004-11-11 17:25 ` Hans Hagen
0 siblings, 1 reply; 2+ messages in thread
From: Nigel King @ 2004-11-11 16:58 UTC (permalink / raw)
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
TIA
Nigel King
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: \in{hyperref}[tableref] at first char of line causes misplaced paragraph
2004-11-11 16:58 \in{hyperref}[tableref] at first char of line causes misplaced paragraph Nigel King
@ 2004-11-11 17:25 ` Hans Hagen
0 siblings, 0 replies; 2+ messages in thread
From: Hans Hagen @ 2004-11-11 17:25 UTC (permalink / raw)
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
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-11-11 17:25 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-11-11 16:58 \in{hyperref}[tableref] at first char of line causes misplaced paragraph Nigel King
2004-11-11 17:25 ` Hans Hagen
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).