![标签类中的表格对齐不起作用](https://linux22.com/image/318186/%E6%A0%87%E7%AD%BE%E7%B1%BB%E4%B8%AD%E7%9A%84%E8%A1%A8%E6%A0%BC%E5%AF%B9%E9%BD%90%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我使用 Sharelatex.com,我想使用标签类来制作标签(http://ctan.mirrorcatalogs.com/macros/latex/contrib/labels/labels.pdf)
在标签内使用时,表格中单元格的内容不再对齐
如果我将它放在标签外面,它可以正常工作。我对乳胶的了解不够,无法发现问题。我希望有人可以帮忙。
\documentclass[9pt]{article}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage{labels}
\LabelCols=3% Number of columns of labels per page
\LabelRows=7% Number of rows of labels per page
\LeftBorder=8mm% Space added to left border of each label
\RightBorder=8mm% Space added to right border of each label
\TopBorder=9mm% Space to leave at top of sheet
\BottomBorder=2mm% Space to leave at bottom of sheet
\LabelGridtrue
\begin{document}% End of preamble
{\fontfamily{phv}\selectfont
{
\begin{tabular}{|l|c|}
aaa & rr \\
aaaaaa & rrrrr
\end{tabular}
\begin{labels}
\textbf{Anlage 12}
\textbf{HV Trendgrafik}\break
Betrieb
\begin{tabular}{|l|c|}
aaa & rr \\
aaaaaa & rrrrr
\end{tabular}
Datum:
\end{labels}
}
\end{document}
答案1
实际上,为了使对齐正确进行,需要%
在最后一个\\
加号后加上一个符号,正如您将看到的,如果您在对齐中包含第三行,其内容与第一行相同:该行将以“aaa”为中心,除非您用 结束上一行\\%
。
在标签环境中,每个行尾字符都被视为开始新段落的指令。(如果没有此行为,则“Anlage 12 HV ...”会全部显示在一行上,并且“Trendgrafik”和“Betrieb”之间不会有行间隙。您可以使用 关闭此行为\genericlabel
,如软件包文档中所述。)
在 (La)TeX 中,这是通过将换行符设为“活动”字符来实现的。在标签包中,它通过(首先在水平模式下插入一个空框,然后)通过执行隐式 开始一个新段落来执行此任务\\
。这将运行\newline
宏,该宏通过执行 结束上一行\hfil
,然后通过 开始新行\break
。但在tabular
环境中,\break
没有效果(因为您没有构建段落),因此您只剩下一个\hfil
使行居中。
在第 2 列及以后的标签内的表格中,左对齐可以正常工作;只是这种隐式的新行行为(通常是可取的)会弄乱表格的第一列。
这在包级别无法合理地处理,因为不清楚何时在标签上下文中关闭此行为。
因此有两个选择:
手动使用
\genericlabel
并处理换行符,因此:\genericlabel{% \begin{tabular}{l} \textbf{Anlage 12}\\ \textbf{HV Trendgrafik}\\[\medskipamount] Betrieb\\ \begin{tabular}{|l|c|} aaaaaa & rr\\ aaa & rrrrr \end{tabular}\\ Datum: \end{tabular}}
%
在 a 内的每一行末尾使用 atabular
(但不要在最后的 之后\end{tabular}
):\begin{labels} \textbf{Anlage 12} \textbf{HV Trendgrafik}\break Betrieb \begin{tabular}{|l|c|}% aaaaaa & rr\\% aaa & rrrrr% \end{tabular} Datum: \end{labels}
我希望这个解释对你有帮助!
Julian(最后一个编辑该软件包的人labels.sty
)
答案2
如评论所述,缺少一个 % 符号。这肯定不是预期的行为。的作者labels
正在撰写有关地址标签的一些错误空格修复的文章tabular
。也许这是同样的问题。应该修复,所以请考虑报告此问题。
% arara: pdflatex
\documentclass[9pt]{article}
\usepackage{labels}
\LabelGridtrue
\begin{document}
\fontfamily{phv}\selectfont
\begin{labels}
\textbf{Anlage 12}
\textbf{HV Trendgrafik}\break
Betrieb
\begin{tabular}{|l|c|}%
aaa & rr \\
aaaaaa & rrrrr
\end{tabular}
Datum:
\end{labels}
\end{document}