我尝试使用该tabularray
包为我的 CV 模板创建一个环境,效果很好。但是,我收到一个错误:Package tabularray Warning: Table width is too small, need 8.0036pt more!
我正考虑在 Overleaf 上共享我的模板,但这要求文档没有警告(不包括过满或未满的 \hboxes)。所以,我的问题很简单:我该如何消除这个错误?
梅威瑟:
\documentclass[a4paper]{article}
\usepackage{geometry}
\geometry{left=23mm,right=23mm,
bindingoffset=0mm, top=20mm,bottom=20mm}
\usepackage{tabularray}
\newenvironment{CV_table}{%
\begin{table}[h]
\begin{tblr}{%
colspec={Q[l,0.2\textwidth] Q[l,0.5\textwidth] Q[l,0.24\textwidth]},
column{1} = {font=\bfseries},
rowsep=0.5\baselineskip}%
}
{
\end{tblr}
\end{table}
}
\begin{document}
``Tabular eqvivalent'':
\begin{table}[h]
\begin{tabular}{p{0.2\textwidth} p{0.5\textwidth} p{0.24\textwidth}}
\textbf{a} & b & c \\[0.7\baselineskip]
\textbf{d} & e & f
\end{tabular}
\end{table}
What i get using tblr:
\begin{CV_table}
job name 1 & job description & {Date \\ Location} \\
job name 2 & job decription 2 & {Date 2 \\ Location 2}
\end{CV_table}
\end{document}
编辑:
是否可以只删除最后一行的空格(行分隔)?该行向下延伸得有点太长了。我已在此图中标记了要删除的行部分:
答案1
您需要可扩展的列;规范中的数字表示相对比例。
\documentclass[a4paper]{article}
\usepackage{geometry}
\geometry{
left=23mm,
right=23mm,
bindingoffset=0mm,
top=20mm,
bottom=20mm,
showframe,% comment for production version
}
\usepackage{tabularray}
\newenvironment{CV_table}{%
\par\addvspace{\topsep}\noindent
\begin{tblr}{
width=\textwidth,
colspec={@{} X[l,2] X[l,4] X[l,3] @{}},
column{1} = {font=\bfseries},
rowsep=0.5\baselineskip
}%
}{\end{tblr}\par\addvspace{\topsep}}
\begin{document}
\begin{CV_table}
job name 1 & job description & {Date \\ Location} \\
job name 2 & job description 2 & {Date 2 \\ Location 2}
\end{CV_table}
\end{document}
请注意不想使用table
。修改 中的空间量,\addvspace
以更改此类表格周围的间距。
答案2
我找到了解决方案,但在其他地方找不到它,所以我决定仍然发布问题并自己回答,以帮助其他想要修复此错误的人。
我只是width=1.1\textwidth,
在规范中加入了tblr
,这样就消除了错误。这是新的环境定义CV_table
:
\newenvironment{CV_table}{%
\begin{table}[h]
\begin{tblr}{%
colspec={Q[l,0.2\textwidth] Q[l,0.5\textwidth] Q[l,0.24\textwidth]},
column{1} = {font=\bfseries},
rowsep=0.5\baselineskip}%
}
{
\end{tblr}
\end{table}
}