需要 colortbl 的替代品

需要 colortbl 的替代品

感谢 Ulrike 对我的问题的帮助如何让长标题出现在各个页面上现在我终于可以为我的论文添加超长标题了。再次感谢 :-) 每张图片均使用以下代码块来实现此目的:

\begin{figure}[H]
\includegraphics{largeImage}
\end{figure}
\bigskip
\setbox0\vbox{\makeatletter
\let\caption@rule\relax
\captionof{figure}[short caption]{\kant[1-4]}
\global\skip1\lastskip\unskip
\global\setbox1\lastbox
}
\unvbox0
\setbox0\hbox{\unhbox1\unskip\unskip\unpenalty
\global\setbox1\lastbox}
\unvbox1
\vskip\skip1

我需要在论文中使用彩色表格行。只要我使用 \include{colortbl} 包含 colortbl 包(这是满足该需求的最佳实践),我的长文本标题就会始终移动到下一页,我不知道为什么。即使我不使用 colortbl 附带的命令,标题也会移动到下一页,而不是继续在那里,以下是比较。

\usepackage{colortbl}

使用 \usepackage{colortbl} 后,页面布局如下所示。不幸的是,标题完全移到了下一页,导致空间损失

没有\usepackage{colortbl}

不使用 \usepackage{colortbl} 时,页面布局如下所示。一切都很好,长标题完全移到了下一页,导致空间损失

因此,加载包 colortbl 时会发生一些奇怪的事情......

-> 有没有其他方法可以替代 colortbl,以便在行后面添加一些背景颜色?我刚刚发现了在背景中放置彩色图像的想法,但这仅适用于单个单元格,而不适用于多列行(纹理或图像作为单个表格单元格的背景)。

-> 也许可以更改/覆盖包代码本身以摆脱该问题(我不知道为什么颜色会对页面布局产生影响......)虽然我是 Latex 初学者,但我可以尝试查看包的源代码,但我找不到包含实际包代码的相关文件(https://ctan.org/pkg/colortbl?lang=de

有谁知道如何将彩色表格行与长标题修复结合起来如何让长标题出现在各个页面上

根据要求,这是 MWE。一旦您取消注释该\usepackage{colortbl}包,标题就会移至下一页,正如在如何让图形标题跨越多页,而不必将所有内容切换到 capt-of?作者:威利·阿德勒:

\RequirePackage{fix-cm}
\documentclass[a4paper,twoside,openright,headsepline,parskip]{scrreprt}
\usepackage[scaled=0.92]{helvet}
\usepackage{setspace}
\onehalfspacing
\usepackage[a4paper]{geometry}
\geometry{width=16cm, left=3cm, top=2.5cm, bottom=2.5cm}
\usepackage[headsepline]{scrpage2}
\pagestyle{scrheadings}
\lehead{\fontfamily{cmr}\textsc{Results}}
\rohead{\fontfamily{cmr}\textsc{Results}}
\usepackage[english]{babel}
\usepackage[nooneline]{caption}
\usepackage{graphicx}  
\usepackage[format=plain, font={small, singlespacing}, labelfont=bf]{caption}
\usepackage{kantlipsum}
\usepackage{float}
%\usepackage{colortbl}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

\kant[1]

\begin{figure}[H]%
\includegraphics[scale=1.1]{example-image-c}
\end{figure}
\bigskip
\setbox0\vbox{\makeatletter
\let\caption@rule\relax
\captionof{figure}[short caption]{\kant[1-4]}
\global\skip1\lastskip\unskip
\global\setbox1\lastbox
}
\unvbox0
\setbox0\hbox{\unhbox1\unskip\unskip\unpenalty
\global\setbox1\lastbox}
\unvbox1
\vskip\skip1

\kant[6-7]

\end{document} 

亲切的问候,

斯蒂芬

答案1

问题与colortbl包无关color。您需要禁用颜色,原因与现有代码禁用标题规则的原因相同:颜色什么的,类似规则节点一旦添加就不能被删除。这只是增加了\let\normalcolor\relax

\RequirePackage{fix-cm}
\documentclass[a4paper,twoside,openright,headsepline,parskip]{scrreprt}
\usepackage[scaled=0.92]{helvet}
\usepackage{setspace}
\onehalfspacing
\usepackage[a4paper]{geometry}
\geometry{width=16cm, left=3cm, top=2.5cm, bottom=2.5cm}
\usepackage[headsepline]{scrpage2}
\pagestyle{scrheadings}
\lehead{\fontfamily{cmr}\textsc{Results}}
\rohead{\fontfamily{cmr}\textsc{Results}}
\usepackage[english]{babel}
\usepackage[nooneline]{caption}
\usepackage{graphicx}  
\usepackage[format=plain, font={small, singlespacing}, labelfont=bf]{caption}
\usepackage{kantlipsum}
\usepackage{float}
\usepackage{color}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

\kant[1]

\begin{figure}[H]%
\includegraphics[scale=1.1]{example-image-c}
\end{figure}
\bigskip
\setbox0\vbox{\makeatletter
\let\caption@rule\relax
\let\normalcolor\relax
\captionof{figure}[short caption]{\kant[1-4]}%
\global\skip1\lastskip\unskip
\global\setbox1\lastbox
}
\unvbox0
\setbox0\hbox{\unhbox1\unskip\unskip\unpenalty
\global\setbox1\lastbox}
\unvbox1
\vskip\skip1

\kant[6-7]

\end{document} 

相关内容