我搜索了一番,但没有什么收获。我希望能够看到标题标签并将其用作标题文本的“标题”。
一个例子:
\documentclass[11pt]{article}
\usepackage{textcomp}
\usepackage{graphicx}
\usepackage{relsize}
\usepackage{tabu}
\usepackage{booktabs}
\usepackage[
justification=justified,
labelfont=bf,
textfont=small,
textfont=it,
labelsep=newline]{caption}
\begin{document}
\listoftables
\begin{table}
\centering
\footnotesize
\sffamily{
\begin{tabu} to
\textwidth {lrl}
\toprule
& 15,639 patients \\
\midrule
Age (yrs)& 70.0&(18.0--104.0)\\
Male sex& 8,113&(51.9)\\
CCMDS Level of Care&&\\
\hspace*{1em}\smaller[1]{High dependency}& 2,708&(17.3)\\
Nursing observations&&\\
\hspace*{1em}\smaller[1]{Continuous monitoring}& 4,497&(28.8)\\
\hspace*{1em}\smaller[1]{Up to 4 hrly (inclusive)}& 7,435&(47.5)\\
\hspace*{1em}\smaller[1]{Less frequently than 12 hrly}& 2,080&(13.3)\\
Delayed referral to critical care& 2,012&(12.9)\\
Reported sepsis diagnosis&&\\
\hspace*{1em}\smaller[1]{Likely}& 5,741&(36.7)\\
\hspace*{1em}\smaller[1]{Unlikely}& 4,232&(27.1)\\
\bottomrule
\end{tabu}
}
\caption[Baseline characteristics]{All study patients. Numbers are mean(SD), or median(IQR)}
\label{baseline_pt_chars}
\normalfont
\end{table}
\end{document}
\usepackage[labelfont=bf]{caption}
\begin{table}
... table code here ....
\caption[Baseline characteristics]{All study patients. Numbers are mean(SD), or median(IQR)}
\end{table}
并将其格式化为
表 1:基线特征所有研究患者。数字为平均值 (SD) 或中位数 (IQR)
这可能吗?或者我应该手动编码标题之外但在环境内部的所有格式float
...这意味着要写两次标签(一次用于标题和表格列表,一次在环境内部float
)?
我希望问题清楚了?
答案1
我的建议是定义一个新命令来达到这个目的:
\documentclass{article}
\usepackage[labelfont=bf]{caption}
\newcommand{\tablecaption}[2]{\caption[#1]{\textbf{#1} #2}}
\begin{document}
\listoftables
\section{Something}
\begin{table}[htp]
... table code here ....
\tablecaption{Baseline characteristics}{All study patients. Numbers are mean (SD), or median (IQR)}
\end{table}
\end{document}
重新定义\caption
意味着数字也具有相同的行为。
可以使用相同的语法\caption
和相同的命令名称;但由于可选参数变为必需参数,我认为使用新命令的解决方案更可取。无论如何,它在这里:
\documentclass{article}
\usepackage[labelfont=bf]{caption}
\usepackage{letltxmacro}
\AtBeginDocument{% caption does its business here
\LetLtxMacro{\captioncaption}{\caption}
\renewcommand{\caption}[2][]{\captioncaption[#1]{\textbf{#1} #2}}
}
\begin{document}
\listoftables
\section{Something}
\begin{table}[htp]
... table code here ....
\caption[Baseline characteristics]{All study patients. Numbers are mean (SD), or median (IQR)}
\end{table}
\end{document}
如果某些标题中缺少“可选”参数,我们必须采取稍微不同的方法:
\usepackage{letltxmacro}
\AtBeginDocument{% caption does its business here
\LetLtxMacro{\captioncaption}{\caption}
\renewcommand{\caption}[2][]{%
\if\relax\detokenize{#1}\relax
% Missing optional argument
\captioncaption{#2}%
\else
% The optional argument is specified
\captioncaption[#1]{\textbf{#1} #2}%
\fi}
}