diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-13 00:01:05 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-13 00:01:05 +0000 |
commit | 7dc48e4d760aa8e703387e96794effaad3c24a78 (patch) | |
tree | 7d99efb2359a56ffe56c80d6c2192ffcc41e2d92 /Master/texmf-dist/tex/latex/oberdiek/hypcap.sty | |
parent | fd257bd5c75a905dfa0ca6e3e507d9ed29338e1f (diff) |
oberdiek
git-svn-id: svn://tug.org/texlive/trunk@1150 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/oberdiek/hypcap.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/oberdiek/hypcap.sty | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty b/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty new file mode 100644 index 00000000000..641c2dbc349 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty @@ -0,0 +1,125 @@ +%% +%% This is file `hypcap.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hypcap.dtx (with options: `package') +%% +%% This file is part of the package `hypcap' for use with LaTeX2e. +%% +%% Function: Adjusting anchors of captions. +%% +%% Copyright (C) 1999-2001 Heiko Oberdiek. +%% +%% This program may be distributed and/or modified under +%% the conditions of the LaTeX Project Public License, +%% either version 1.2 of this license or (at your option) +%% any later version. The latest version of this license +%% is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions +%% of LaTeX version 1999/12/01 or later. +%% +%% Please send error reports and suggestions for improvements to +%% Heiko Oberdiek <oberdiek@uni-freiburg.de>. +%% +\ProvidesPackage{hypcap} + [2001/08/27 v1.3 Adjusting anchors of captions (HO)] +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% +\@ifundefined{hyper@@anchor}{% + \PackageError{hypcap}{You have to load 'hyperref' first}\@ehc + \endinput +}{} +\newcommand*\hc@org@caption{} +\let\hc@org@caption\caption +\newif\if@capstart +\newcommand*\hypcapspace{.5\baselineskip} +\newcommand*\capstart{% + \H@refstepcounter\@captype % first part of caption + \hyper@makecurrent\@captype + \vspace*{-\hypcapspace}% + \begingroup + \let\leavevmode\relax + \hyper@@anchor\@currentHref\relax + \endgroup + \vspace*{\hypcapspace}% + \let\caption\hc@caption + \global\@capstarttrue +} +\def\hc@caption{% + \@dblarg{\hc@@caption\@captype}% +} +\long\def\hc@@caption#1[#2]#3{% + \let\caption\hc@org@caption + \global\@capstartfalse + \hyper@makecurrent\@captype + \par\addcontentsline{% + \csname ext@#1\endcsname}{#1}{% + \protect\numberline{% + \csname the#1\endcsname + }{\ignorespaces #2}% + }% + \begingroup + \@parboxrestore + \normalsize + \@makecaption{\csname fnum@#1\endcsname}{% + \ignorespaces#3% + }% + \par + \endgroup +} +\def\hypcapredef#1{% + \expandafter\hc@redef\csname hc@org#1\expandafter\endcsname + \csname hc@orgend#1\expandafter\endcsname + \expandafter{#1}% +} +\def\hc@redef#1#2#3{% + \newcommand#1{}% + \expandafter\let\expandafter#1\csname#3\endcsname + \expandafter\let\expandafter#2\csname end#3\endcsname + \renewenvironment*{#3}[1][]{% + \ifx\\##1\\% + #1\relax + \else + #1[##1]% + \fi + \capstart + }{% + \if@capstart + \PackageError{hypcap}{You have forgotten to use \string\caption}% + \global\@capstartfalse + \else + \fi + #2% + }% +} +\DeclareOption{figure}{\hypcapredef{\CurrentOption}} +\DeclareOption{figure*}{\hypcapredef{\CurrentOption}} +\DeclareOption{table}{\hypcapredef{\CurrentOption}} +\DeclareOption{table*}{\hypcapredef{\CurrentOption}} +\DeclareOption{all}{% + \hypcapredef{figure}% + \hypcapredef{figure*}% + \hypcapredef{table}% + \hypcapredef{table*}% +} +\ProcessOptions\relax +\endinput +%% +%% End of file `hypcap.sty'. |