使用命令为什么在标题中使用时参数会加倍?,它在大多数情况下都能正常工作,但在少数情况下(例如 20 个中就有 1 个)\\
无法开始新的一行。
例如使用
\begin{table}
\centering%
\begin{tabular}{llllll}
\hline
\textbf{Bezeichnung} & \textbf{x} & \textbf{y} & \textbf{z} &
$\mathbf{u'_N}$ & $\mathbf{v'_N}$ \\
\hline
... & ... & ... & ... & ... & ...
%...
\hline
\end{tabular}
\caption[Koordinaten ausgewählter Weißpunkte]%
{\label{\Lt{Weisspunkte}}Koordinaten ausgewählter Weißpunkte%
\FS[Quelle]{\cite[S.~279]{poynton_digital_2012}\index{Illuminant}}}
\end{table}
在表格中,在 之前没有开始新行Quelle
,如下所示(参见黄线;页面的其余部分被像素化以强调重要部分并提高图像压缩率):
或者详细显示:
请注意,在表格上方的图中,相同的命令会在“Bildquelle:”前插入换行符。我找不到类似问题的参考资料;是不是因为如果页面上的垂直空间很紧,LaTeX 会尝试避免换行?
新增内容
对于那些未能找到的人\\
,这里是(来自参考资料的答案):
\newcommand{\FS}[2][Bildquelle]{%
\protect\ifthenelse{\equal{#1}{}}%
{\protect\\{\protect\scriptsize{}#2}}
{\protect\\{\protect\scriptsize{}#1: #2}}}
强制将表 6.1 放在新页面上不会改变行为。将标题文本变长或变短也不会改变行为。但是当我将标题更改为
\caption[Koordinaten ausgewählter Weißpunkte]%
{\label{\Lt{Weisspunkte}}Lorem ipsum Koordinaten ausgewählter Weißpunkte%
\FS[Quelle]{\cite[S.~279]{poynton_digital_2012}\index{Illuminant}}}
然后表格转到下一页,并插入换行符:
平均能量损失
最后我设法创建了一个 MWE(pdflatex,实际上它比想象的要容易):
\documentclass[a4paper,twoside]{report}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{ifthen}
\usepackage[pdftex,colorlinks,hypertexnames=false]{hyperref}
\usepackage{makeidx}
\usepackage{showidx}
\newcommand{\FS}[2][Bildquelle]{%
\protect\ifthenelse{\equal{#1}{}}{%
\protect\\*{\protect\scriptsize{}#2}}{%
\protect\\*{\protect\scriptsize{}#1: #2}}}
\begin{document}
%
\begin{table}
\centering%
\begin{tabular}{llllll}
\hline
\textbf{Bezeichnung} & \textbf{x} & \textbf{y} & \textbf{z} &
$\mathbf{u'_N}$ & $\mathbf{v'_N}$ \\
\hline
A & B & C & D & E & F \\
A & B & C & D & E & F \\
A & B & C & D & E & F \\
A & B & C & D & E & F \\
\hline
\end{tabular}
\caption[Koordinaten ausgewählter Weißpunkte]%
{\label{Weisspunkte}Koordinaten ausgewählter Weißpunkte%
\FS[Quelle]{[Poy12, S.~279]\index{Illuminant}}}
\end{table}
%
\begin{table}
\centering%
\begin{tabular}{llllll}
\hline
\textbf{Bezeichnung} & \textbf{x} & \textbf{y} & \textbf{z} &
$\mathbf{u'_N}$ & $\mathbf{v'_N}$ \\
\hline
A & B & C & D & E & F \\
\hline
\end{tabular}
\caption[Koordinaten ausgewählter Weißpunkte]%
{\label{Weisspunkte2}Koordinaten ausgewählter Weißpunkte%
\FS[Quelle]{[Poy12, S.~279]\index{Illuminant}}}
\end{table}
\end{document}
解决方案(https://tex.stackexchange.com/a/518731/182650)
添加后
\usepackage[font=small,labelfont={sf,bf},position=bottom,singlelinecheck=false]%
{caption}
答案1
您可以简化该示例:
\documentclass[a4paper,twoside]{report}
\begin{document}
\begin{table}
\caption[]{aaaaaaaaaaa aaaaaa
ccccccccccccccc bbbbbbbbbbbbbbb \\
dddddddddddddd}
\end{table}
%
\begin{table}
\caption[]{aaaaa\\bbb}
\end{table}
\end{document}
大多数类都以两种样式设置标题,第一种本质上是\mbox
一行居中显示,如果适合文本框(\\
在 mbox 中不执行任何操作)。如果该框太宽,一行无法容纳,则会被丢弃,并将标题重新设置为\parbox
,如果使用第二种格式,\\
则会起作用。
如果您需要的话,该caption
包中有一个选项可以跳过单行测试。