ftp://ftp.springer.de/pub/tex/latex/llncs/latex2e/llncs.cls
(Document Class: llncs 2004/08/17 v2.14) along with
\usepackage[dvips]{hyperref}
then suddenly the font size of all figure captions changes. Normally,
LNCS figure captions use a smaller font size than the normal text.
But as soon as I load hyperref, these are suddenly of the same size
as the main text.
Has anyone the faintest idea of what is happening here?
Is there a practical fix or workaround known?
I've just tested this under tetex-3.0 (SuSE Linux 9.3), but recall
having seen this problem also in other environments.
Markus
http://www.cl.cam.ac.uk/~mgk25/publ-tips/
--
Markus Kuhn, Computer Laboratory, University of Cambridge
http://www.cl.cam.ac.uk/~mgk25/ || CB3 0FD, Great Britain
Markus Kuhn wrote:
> When I use Springer's LaTeX class for the Lecture Notes on
> Computer Science (LNCS) series from
>
> ftp://ftp.springer.de/pub/tex/latex/llncs/latex2e/llncs.cls
>
> (Document Class: llncs 2004/08/17 v2.14) along with
>
> \usepackage[dvips]{hyperref}
>
> then suddenly the font size of all figure captions changes. Normally,
> LNCS figure captions use a smaller font size than the normal text.
> But as soon as I load hyperref, these are suddenly of the same size
> as the main text.
>
> Has anyone the faintest idea of what is happening here?
I know whats happening...
> Is there a practical fix or workaround known?
...but can't think of an easy workaround.
llncs.cls obtains the smaller font by redefining \@floatboxreset, and
then omitting any font change from \@makecaption. Wrong. They should
have followed the standard practice of putting the caption font switch
into \@makecaption, which does the actual typesetting of the caption.
Hyperref, on the other hand, redefines \caption and \@caption and puts
\normalfont just before the call to \@makecaption.
One possible solution is to load a package that allows configuration of
captions. Hyperref recognizes the float package, so maybe that can be
used.
Another is to copy llcns.cls's definition of \@makecaption and put in
\small:
\long\def\@makecaption#1#2{%
\small
\vskip\abovecaptionskip
\sbox\@tempboxa{{\bfseries #1.} #2}%
\ifdim \wd\@tempboxa >\hsize
{\bfseries #1.} #2\par
\else
\global \@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
\fi
\vskip\belowcaptionskip}
Or copy hyperref's definition of \@caption and change \normalfont to
\normalfont\small
Dan