程序包 longtable 产生奇怪的错误

程序包 longtable 产生奇怪的错误

社区,

我正在用 De Gruyter 开放样式的 Latex 写一篇论文。通常,我有一个两列布局,但我需要排除两个应该在整个页面上水平放置的大表格,因为它们太大了。正如您在代码示例中看到的,我为此使用了landscape和环境。longtable

\section{1}
\onecolumn
\begin{landscape}
\begin{longtable}{p{0.5cm} | p{4cm} | p{7cm} | p{9cm}}
& X & Y & Z \\
\hline \hline
1 & AAA \newline BBB & Lorem Ipsum & 
\begin{itemize}
    \item q
    \item r
    \item s
\end{itemize} \\
& X & Y & Z \\
\hline \hline
2 & DDD \newline EEE & Lorem Ipsum & 
\begin{itemize}
    \item t
    \item u
    \item v
\end{itemize} \\

\hline

\end{longtable}
\end{landscape}
\twocolumn

\section{2}

我得到了不错的输出,但也遇到了很多错误。它们都是同一类型的:

! Undefined control sequence.
<template> ...vtop \@startpbox {0.5cm}\@tablefont 
                                                  \ignorespaces 
l.74 &
       X & Y & Z \\
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

也许您知道在哪里可以找到解决方案,或者知道为什么会发生这些错误。但我真的一点头绪都没有。由于 De gruyter 的 .sty 文件非常大,因此我没有将其包含在此处,但如果您认为解决错误需要它,可以在此处找到它:http://www.degruyter.com/dg/page/59/production

我希望你能帮助我。

提前致谢。

答案1

你可以把

\makeatletter
\def\@tablefont{\normalfont}
\makeatother

在序言中给出了一个默认定义,但是该类显然打算让您使用supertabular而不是longtable用于长表,因为该包已经由类文件加载,并且supertabular该类还tabular使用代码对标准进行了修补以支持\@tablefont

无关,但看到这个文件很令人沮丧仍然分布

\p@=1bp\relax

在文件顶部,这几乎破坏了所有的 LaTeX 尺寸计算。

相关内容