我可能忽略了一些非常明显的东西,但我的搜索一无所获。我想在用该easylist
包制作的大纲中间放一个表格。表格位于 2 层深度的文本之后,但由于tabularx
默认情况下表格居中,表格的左边缘位于文本左侧约四分之一英寸处,看起来很糟糕。我目前的设置基本上是这样的。
\usepackage{tabularx}
\usepackage{ltablex}
\begin{document}
\begin{easylist}[articletoc]
\ListProperties(Margin2=.5in,Margin3=1in,Margin4=1.5in)
# Section
## Subsection
\setlength{\extrarowheight}{1.5pt}
\renewcommand{\tabcolsep}{2pt}
\begin{tabularx}{\linewidth}{ | l | >{\raggedright\arraybackslash}X | }
\hline
this & that \\ \hline
\end{tabularx}
\end{easylist}
\end{document}
如果有人能告诉我如何将表格左对齐,并与页边距或页面边缘保持一定距离,我就可以采用这种方法。如果能找到一种与前一个文本的缩进级别相匹配的方法,而不是对距离进行硬编码,则可以获得加分。
答案1
easylist
不会更新,\linewidth
因为它使用了一种非常不同的缩进方式。您可以通过定义合适的命令来模拟它。
\documentclass{article}
\usepackage[sharp]{easylist}
\usepackage{tabularx}
\makeatletter
\newcommand\currlinewidth{\dimexpr\textwidth-\el@TotalMargin\relax}
\makeatother
\begin{document}
\hrule
\bigskip
\begin{easylist}[articletoc]
\ListProperties(Margin2=.5in,Margin3=1in,Margin4=1.5in)
# Section
## Subsection
\setlength{\extrarowheight}{1.5pt}
\renewcommand{\tabcolsep}{2pt}
\begin{tabularx}{\currlinewidth}{ | l | >{\raggedright\arraybackslash}X | }
\hline
this & that \\ \hline
\end{tabularx}
\end{easylist}
\end{document}
只是\hrule
为了显示行宽。当然如果你想把tabularx
和“Subsection”放在同一行,你必须事先测量好字。