新的文档环境和 tabularx 包

新的文档环境和 tabularx 包

我正在尝试创建一个新环境,但它给我带来了一些麻烦。编译器一直告诉我我缺少一个 },但我不知道它可能在哪里。这是一个代码示例。谢谢你的帮助。

\documentclass{article} 
\usepackage{multirow, tabularx}
\usepackage{xparse}

\NewDocumentEnvironment{afskriftFolketaelling}{mm}
{%
    \tabularx{\textwidth}{|X|l|c|c|l|l|l|}
        \hline
        \multicolumn{7}{|c|}{\textbf{#1}}\\
        \multicolumn{7}{|c|}{#2}\\\hline
        \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title}\\\hline
}
{
    \endtabularx
}
\begin{document}
    \begin{afskriftFolketaelling}{test1}{test2}
    {
     1&2&3&4&5&6&7\\\hline 
    }
    \end{afskriftFolketaelling}
\end{document}

答案1

您的环境采用两个强制参数,并且您另外指定整个环境内容位于其自己的组中。这不是tabular(或tabularx),因为该组现在跨越多个单元格。也就是说,您在一个单元格中打开该组,然后在另一个单元格中将其关闭,这是不正确的。“缺失}”错误与第一个打开的组尚未正确关闭有关。

解决方案是删除环境中的组:

在此处输入图片描述

\documentclass{article} 
\usepackage{tabularx,xparse}

\NewDocumentEnvironment{afskriftFolketaelling}{ m m }
{%
  \noindent\tabularx{\textwidth}{ | X | l | c | c | l | l | l | }
    \hline
    \multicolumn{7}{|c|}{\textbf{#1}} \\
    \multicolumn{7}{|c|}{#2} \\ \hline
    \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} & \textbf{title} \\ \hline
}
{%
  \endtabularx
}
\begin{document}

\begin{afskriftFolketaelling}{test1}{test2}
  1 & 2 & 3 & 4 & 5 & 6 & 7 \\ \hline 
\end{afskriftFolketaelling}

\end{document}

相关内容