我猜我的问题与标题有关。当表格(标题在顶部)出现在页面顶部时,前面总会有一些垂直空白。然而,图(标题在下方)与顶部完美对齐。我猜这是因为标题?我能以某种方式全局删除这个空白吗?标题提供了一些选项来告诉它标题是在顶部还是底部,但这没有帮助……这是我的代码:
\documentclass[
12pt,
pdftex,
a4paper,
parskip=half,
]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{showframe}
\usepackage{blindtext}
\begin{document}
\begin{table}[t]
\centering
\caption\textbf{Fancy table}
\begin{tabular}{ccc}
This is & a fancy & table \\
\end{tabular}
\end{table}
\Blindtext[5]{5}
\end{document}
答案1
您必须告诉 KOMA-Script,您想要表格标题而不是表格签名:
\documentclass[
12pt,
a4paper,
parskip=half,
captions=tableheading% formatting for table headings (see the KOMA-Script manual)
]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{showframe}
\usepackage{blindtext}
\setkomafont{caption}{\bfseries}% caption text (but not label) bf (see the KOMA-Script manual)
\begin{document}
\begin{table}[t]
\centering
\caption{Fancy table}
\begin{tabular}{ccc}
This is & a fancy & table \\
\end{tabular}
\end{table}
\Blindtext[5]{5}
\end{document}
注意,\caption
有一个强制性论点!
还要注意,您不应该使用\textbf
来使表格标题变粗,而应该使用\setkomafont{caption}{…}
来更改标题文本的字体(也可以选择更改\setkomafont{captionlabel}{…}
标题文本的标签)。
答案2
有两种长度:\abovecaptionskip
和\belowcaptionskip
。通常标题放在图形/表格下方,因此\abovecaptionskip
具有某个非零值且belowcaptionskip
等于零。您不应全局更改这些值——它们既用于图形也用于表格。
我建议使用标题打包并定义两个不同的设置:一个用于表格,另一个用于图形。例如:
\captionsetup[table]{position=above, aboveskip=0pt, belowskip=10pt}
顺便说一句,这是一个非常有用的包。