我正在使用 csvsimple 包中的 csvreader 在我的文档中生成表格。我很难在表格上添加顶部边框。以下是代码,包括编写 .csv
\documentclass{article}
\usepackage{csvsimple}
% Make csv in question
\begin{filecontents*}{scientists2.csv}
name,surname,
Albert,Einstein,
Marie,Curie,
Thomas,Edison
\end{filecontents*}
\begin{document}
\begin{center}
\csvreader[tabular=|l|l|,
table head=\textbf{ First Name} & \textbf{Last Nmae} \\\hline,
late after line = \\\hline]%
{scientists2.csv}{name=\name,surname=\surname}%
{\name & \surname}%
\end{center}
\end{document}
我可以传递什么参数(给表格?)来查看顶部边框?我正在使用 TexWorks 进行编译。谢谢,
答案1
1. csvsimple
:
您可以简单地调整table head
以开始\hline
:
2. booktabs
:
然而,包裹booktabs
通常建议生产更多专业的查找表格。因此,我添加了第二个示例,该示例与包裹datatool
:
非常感谢 Nicola Talbot,他帮助正确使用booktabs
这里。
3. pgfplotstable
:
解决方案pgfplotstable
使用使用 CSV 阅读器将表格中的一个单元格加粗。
笔记:
不确定为什么我需要
\\
在 之前添加额外的内容\bottomrule
,这会在底部产生额外的空间。为了解决这个问题,我添加了手册\vspace*{-12pt}
,这更像是一种黑客手段。看起来该
csvsimple
包丢弃了最后一行,因为它没有尾随,
。
代码:
\documentclass{article}
\usepackage{datatool}
\usepackage{booktabs}
\usepackage{csvsimple}
% Make csv in question
%\usepackage{filecontents}
\begin{filecontents*}{scientists2.csv}
name,surname,
Albert,Einstein,
Marie,Curie,
Thomas,Edison,
\end{filecontents*}
\begin{document}
\begin{center}
\csvreader[tabular=|l|l|,
table head=\hline \textbf{ First Name} & \textbf{Last Name} \\\hline,
late after line = \\\hline]%
{scientists2.csv}{name=\name,surname=\surname}%
{\name & \surname}%
\end{center}
\DTLloaddb{myDB}{scientists2.csv}
%\DTLdisplaydb{myDB}% Useful for debugging.
\begin{center}
\begin{tabular}{ll}\toprule
\textbf{First Name} & \textbf{Last Name}%
\DTLforeach*{myDB}{\Name=name,\Surname=surname}{%
\DTLiffirstrow{\\\cmidrule{1-2}}{\\}%
\Name & \Surname
}%
\\\bottomrule
\end{tabular}
\end{center}
\end{document}