summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/caption/subcaption.sty
blob: 5f6ee5c2508f5a7268f3524fe4e00fa7191c7eea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
%%
%% This is file `subcaption.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% subcaption.dtx  (with options: `package')
%% 
%% Copyright (C) 1994-2007 Axel Sommerfeldt (caption@sommerfee.de)
%% 
%% --------------------------------------------------------------------------
%% 
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
%% 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.3 or later is part of all distributions of LaTeX
%% version 2003/12/01 or later.
%% 
%% This work has the LPPL maintenance status "maintained".
%% 
%% This Current Maintainer of this work is Axel Sommerfeldt.
%% 
%% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
%% ltcaption.dtx, and subcaption.dtx, the derived files caption.sty,
%% caption2.sty, caption3.sty, ltcaption.sty, and subcaption.sty, and the
%% user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
%% 
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
\ProvidesPackage{subcaption}[2007/12/06 v0.3 Adding subcaptions (AR)]
\@ifundefined{caption@subtypehook}{% we need caption v3.1f or newer
  \PackageError{subcaption}{`caption' package not loaded\MessageBreak
    (which is needed by this package)\@gobble}{%
    If you do not understand this error, please take a closer look\MessageBreak
    at the documentation of the `subcaption' package.\MessageBreak
    \@ehc}%
  \endinput}{}
\let\caption@setkeys@ORI\caption@setkeys
\renewcommand\caption@setkeys[2]{\captionsetup[sub]{#2}}
\caption@ExecuteOptions{subcaption}{%
  font+=small,labelformat=parens,labelsep=space,skip=6pt,list=0,hypcap=0}
\caption@ProcessOptions*{subcaption}
\let\caption@setkeys\caption@setkeys@ORI
\let\caption@setkeys@ORI\@undefined
\@ifundefined{c@figure}{}{\DeclareCaptionSubType{figure}}
\@ifundefined{c@table}{}{\DeclareCaptionSubType{table}}
\caption@For{typelist}{\DeclareCaptionSubType{#1}}
\newcommand*\subcaption{\captionsetup{subtype*}\caption}
\g@addto@macro\caption@subtypehook{\let\subcaption\caption}
\caption@For{subtypelist}{%
  \newenvironment{sub#1}%
    {\caption@withoptargs\subcaption@minipage}%
    {\endminipage}}%
\newcommand*\subcaption@minipage[2]{%
  \minipage#1{#2}%
  \captionsetup{subtype}}
\newcommand*\subcaptionbox{\caption@withoptargs\subcaption@box}
\newcommand\subcaption@box[2]{%
  \@testopt{\subcaption@ibox{#1}{#2}}{\wd\@tempboxa}}
\long\def\subcaption@ibox#1#2[#3]{%
  \@testopt{\subcaption@iibox{#1}{#2}{#3}}\subcaptionbox@hj@default}
\long\def\subcaption@iibox#1#2#3[#4]#5{%
  \setbox\@tempboxa\hbox{#5}%
  \begingroup
  \captionsetup{subtype*}% set \caption@position
  \caption@iftop{%
    \endgroup
    \parbox[t]{#3}{%
      \captionsetup{subtype,position=t}%
      \vbox{\caption#1{#2}}%
      \hrule\@height\z@
      \csname caption@hj@#4\endcsname
      \unhbox\@tempboxa}%
  }{%
    \endgroup
    \parbox[b]{#3}{%
      \captionsetup{subtype,position=b}%
      \csname caption@hj@#4\endcsname
      \unhbox\@tempboxa
      \hrule\@height\z@
      \vtop{\caption#1{#2}}}%
  }}
\providecommand*\caption@hj@c{\centering}
\providecommand*\caption@hj@l{\raggedright}
\providecommand*\caption@hj@r{\raggedleft}
\providecommand*\caption@hj@s{}
\newcommand*\subcaptionbox@hj@default{c}
\g@addto@macro\caption@subtypehook{%
  \ifx\label\subcaption@label \else
    \let\subcaption@ORI@label\label
    \let\label\subcaption@label
  \fi}
\newcommand*\subcaption@label[1]{%
  \@bsphack\begingroup
    \subcaption@ORI@label{#1}%
    \protected@edef\@currentlabel{\csname thesub\@captype\endcsname}%
    \subcaption@ORI@label{sub@#1}%
  \endgroup\@esphack}
\DeclareRobustCommand*\subref{\caption@withoptargs\subcaption@ref}
\newcommand*\subcaption@ref[2]{\ref#1{sub@#2}}
\endinput
%%
%% End of file `subcaption.sty'.