Bug#293183: tetex-extra: spacing of footnotes with hyperref and pdflatex
tags 293183 -fixed
tags 293183 -fixed-in-experimental
stop
Hallo Heiko,
mit der von Arnaud gelieferten Beispieldatei tritt das Problem hier mit
teTeX-beta_2.99.9 immer noch auf, und das enthält ein aktuelles
hyperref. Seine Beispieldatei und die beobachteten
Formatierungsänderungen hänge ich per Fullquote unten an, hier ist die
Filelist:
*File List*
article.cls 2004/02/16 v1.4f Standard LaTeX document class
size10.clo 2004/02/16 v1.4f Standard LaTeX file (size option)
hyperref.sty 2003/11/30 v6.74m Hypertext links for LaTeX
keyval.sty 1999/03/16 v1.13 key=value parser (DPC)
pd1enc.def 2003/11/30 v6.74m Hyperref: PDFDocEncoding definition (HO)
hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive and teTeX
url.sty 2004/03/15 ver 3.1 Verb mode for urls, etc.
hpdftex.def 2003/11/30 v6.74m Hyperref driver for pdfTeX
pifont.sty 2004/09/15 PSNFSS-v9.2 Pi font support (SPQR)
upzd.fd 2001/06/04 font definitions for U/pzd.
upsy.fd 2001/06/04 font definitions for U/psy.
nameref.sty 2003/12/03 v2.21 Cross-referencing by name of section
hyperfootnote-mini.out
hyperfootnote-mini.out
Gruß, Frank
Arnaud Giersch <arnaud.giersch@free.fr> wrote:
> Mardi le 01 février 2005, vers 23:26:37 (CET), Prakash Countcham a
> écrit:
>
>>> What is the difference? Is it possible to see the difference in a
>>> document that does not use this entcs.cls?
>>
>> The difference is the number of letters on the second line. I think it is
>> possible to see the difference in a standard document, but I don't have time
>> to find the correct margins, characters size, etc. to reproduce the same
>> bug.
>
> Hello,
>
> Unfortunately, I am unable to reproduce the bug by using footnotes
> with a standard document class.
>
> After further investigations, it seems that the bug appears because
> entcls.cls redefines footnotes to use \refstepcounter instead of
> \stepcounter.
>
> The following code exhibits a similar bug, using only standard article
> class and \refstepcounter:
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> \documentclass{article}
>
> %\usepackage[pdftex]{hyperref}
> %\usepackage[dvips]{hyperref}
> %\usepackage{hyperref}
>
> \newcounter{a}
> \newlength{\La}
> \newlength{\Lb}
>
> \begin{document}
>
> \setlength{\La}{\textwidth}
> \addtolength{\La}{-\parindent}
> \settowidth{\Lb}{ hyphen}
> \addtolength{\La}{-\Lb}
>
> \newcommand{\test}[1]{%
> \par\rule{\La}{1pt} #1 \rule{5em}{1pt}.}
>
> \test{hyphenation}
> \test{hyphenation\stepcounter{a}}
> \test{hyphenation\refstepcounter{a}}
>
> \end{document}
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> In the third test the word "hyphenation" is not always hyphenated. In
> the following table, you can see the results for different cases:
>
> * without hyperref;
>
> * with hyperref, without option (it loads automatically the "dvips"
> driver with latex, and the "pdftex" driver with pdflatex);
>
> * with hyperref, with option specifying the driver to use
> (i.e. "dvips" for latex, or "pdftex" for pdflatex).
>
> In the table, I note "correct" when the word is hyphenated, and
> "wrong" when it is not.
>
> DVI (latex) PDF (pdflatex)
> ----------------------------------------------------------
> without hyperref correct correct
> hyperref, no option wrong wrong
> hyperref, with option correct wrong
> ----------------------------------------------------------
>
> Note that the behavior is correct with hyperref when the "dvips"
> option is given while it is not with the implicit behavior. This is
> because the "dvips" option redefines \Hy@raisedlink{}, while it is not
> the case when the default is used:
>
> \define@key{Hyp}{dvips}[true]{%
> \def\Hy@driver{hdvips}%
> \def\Hy@raisedlink{}%
> \def\XR@ext{pdf}%
> }
>
> This particular point may be a Debian (or teTex) specificity: with the
> upstream hyperref (as found on CTAN), the default driver is
> "hypertex".
>
> It is this different behavior with or without \Hy@raisedlink that made
> me try to modify this macro.
>
>
>> Furthermore, the bug disappears if we just remove the package hyperref from
>> entcs.cls .
>
> It disappears too if you modify (or comment) the redefinitions of
> \footnote and \footnotemark in entcs.cls.
>
>
>>>> Arnaud Giersch, in message <87lla8xsdp.fsf@dinadan.u-strasbg.fr>, found
>>>> that it was a bug of hyperref and proposed the following patch for the
>>>
>>> Why do you think that inserting an italic correction here makes a
>>> difference between latex and pdflatex?
>>
>> I don't really understand it, but Donald Arseneau suggested that in
>> http://groups.google.fr/groups?threadm=c1.2b8.2K1LTn%2409i%40ag.rhein-main.de
>
> I do not fully understand myself why an italic correction does the
> trick. I suggested this patch by simply following the advice given by
> Donal Arseneau.
>
> After some thinking, I do not even know if the patch is good enough or
> if it breaks things elsewhere. :-(
>
> About this old c.t.t. thread, the following comment, found in
> hyperref.dtx, suggests that the bug talked about if already fixed. I
> however did not find the relevant Changelog entry.
>
> % Redefine \verb+\@footnotemark+, borrowing its code (at the
> % cost of getting out of sync with latex.ltx), to take
> % advantage of its white space and hyphenation fudges. If we just
> % overload it, we can get variant documents (the word before the
> % footnote is treated differently). Thanks to David Carlisle and
> % Brian Ripley for confusing and helping me on this.
>
>
> Regards,
--
Frank Küster
Inst. f. Biochemie der Univ. Zürich
Debian Developer
Reply to: