关于 csvsimple 表中对齐的未满 \hbox 警告

关于 csvsimple 表中对齐的未满 \hbox 警告

csvsimple表不断返回以下类型的警告Underfull \hbox (badness 10000) in paragraph at lines::

\csvreader[no head, longtable=|p{\dimexpr 0.2\linewidth-2\tabcolsep}|p{\dimexpr 0.2\linewidth-2\tabcolsep}|p{\dimexpr 0.2\linewidth-2\tabcolsep}|p{\dimexpr 0.2\linewidth-2\tabcolsep}|p{\dimexpr 0.2\linewidth-2\tabcolsep}|, table head=\hline, late after line=\\\hline]
{gantt/GanttChart.csv}
{1=\one, 2=\two, 3=\three, 4=\four, 5=\five}
{\one & \two & \three & \four & \five}%

我知道这\raggedright可以修复它,但是我无法猜测它到底放在哪里p{}

这是我的文件的前几行(总共 14 行)csv

Task Mode,Task Name,Duration,Start,Finish
Manually Scheduled,task1,3.3 mons,Mon 01/06/15,Mon 31/08/15
Manually Scheduled,task2,34 days,Wed 15/07/15,Mon 31/08/15
Manually Scheduled,task3,11 days,Tue 01/09/15,Tue 15/09/15

答案1

窄列排版最好使用以下方法\raggedright

\begin{filecontents*}{\jobname.csv}
Task Mode,Task Name,Duration,Start,Finish
Manually Scheduled,task1,3.3 mons,Mon 01/06/15,Mon 31/08/15
Manually Scheduled,task2,34 days,Wed 15/07/15,Mon 31/08/15
Manually Scheduled,task3,11 days,Tue 01/09/15,Tue 15/09/15
\end{filecontents*}

\documentclass{article}

\usepackage{csvsimple,array}

\begin{document}

\noindent
\csvreader[
  no head,
  tabular=
    |*{5}{>{\raggedright\arraybackslash}p{\dimexpr 0.2\linewidth-2\tabcolsep-1.2\arrayrulewidth}|},
  table head=\hline,
  late after line=\\\hline
]{\jobname.csv}
  {1=\one, 2=\two, 3=\three, 4=\four, 5=\five}
  {\one & \two & \three & \four & \five}

\end{document}

请注意由于照顾到六条垂直规则(每条宽)而进行的调整\arrayrulewidth,以便在五列之间进行划分(6/5=1.2)。

在此处输入图片描述

和往常一样,filecontents仅用于使示例独立。我认为您不需要longtable,但您可以根据需要更改代码。

相关内容