我的表格运行良好,上面有常规标题,下面有源信息:
在实施给出的解决方案之后https://tex.stackexchange.com/a/485538/91816,字幕消失了。
我认为标题已被源命令定义的标题所取代。
请参阅下面的 MWE(https://www.overleaf.com/read/bryfbdpbfcww)。
\documentclass[10pt]{book}
\usepackage{float}
\usepackage[table]{xcolor}
\usepackage{tabu}
\usepackage{caption}
% TABLE CONFIGURATION
\floatstyle{plaintop}
\restylefloat{table}
\makeatletter
\let\float@table\table % must be after \restylefloat{table}
\renewenvironment{table}
{\taburulecolor{green}\arrayrulecolor{green}\float@table}
{\end@float}
\makeatother
% TABLE CONFIGURATION
\newcommand{\source}[1]{\captionsetup{singlelinecheck=false,justification=justified}\caption*{\footnotesize \noindent Source: {#1}}}
\begin{document}
\begin{table}[H]
\centering
\caption{This is a caption.}
\label{tab:atable}
\begin{tabular}{c|c|c}
\hline
1 & 2 & 3 \tabularnewline
\hline
4 & 5 & 6 \tabularnewline
\hline
\end{tabular}
\source{This is the source.}
\end{table}
\end{document}
它仅当我用 注释掉行间代码时才有效% TABLE CONFIGURATION
。
在我的实际文档中,情况更糟,因为甚至没有显示源代码。我猜是其他一些软件包newfloat
导致了其他问题。
答案1
这是样式的限制plaintop
。当您在同一个环境中有两个标题时table
(这是 LaTeX 允许的),使用重新设置样式的浮动plaintop
只会打印第二个标题,而忽略第一个标题。
\documentclass[10pt]{book}
\usepackage{float}
\floatstyle{plaintop}
\restylefloat{table}
\begin{document}
\begin{table}
\centering
\caption{First caption}
\begin{tabular}{cc}
\hline
a & b \\
\hline
\end{tabular}
\caption{Second caption}
\begin{tabular}{cc}
\hline
a & b \\
\hline
\end{tabular}
\end{table}
\end{document}
解决方案:不要\restylefloat{table}
在适当的位置输入标题。