如何修改表格配方以获得右对齐的列?

如何修改表格配方以获得右对齐的列?

我正在尝试修改给出的食谱先前的答复这样最右边的列(共两列)就是右对齐的。

这是我正在使用的玩具示例:

\documentclass{letter}
\begin{document}\vspace*{-1.5in}
\noindent

\begin{tabular*}{\linewidth}{@{}l@{\extracolsep{\fill}} p{5cm}@{}}
foo &         frobozz \\
bar &            quux \\
baz & yabba-dabba-doo \\
\end{tabular*}

\end{document}

请注意,与引用的答案相反,此代码使用的是\documentclass{letter},而不是\documentclass{article}。 (该文件是一份简历。这里的表格用于保存地址、电话、电子邮件等信息。我需要将整个内容压缩到两页,我希望将这些信息放在两列中可以给我多几行宝贵的内容。)

另外,\vspace*{-1.5in}顶部是我为了减少页面顶部的空间而采取的无知手段。


上面的方法对我来说很好用,只是最右边的列是左对齐的。我必须做什么才能让它右对齐最右边列中的文本(仅)?


我不完全理解这个配方是如何工作的,但通常这不是问题,因为我可以在我不理解的内容中搜索突出的关键字,然后弄清楚。然而,在这种情况下,我不知道要搜索什么,主要是因为我不理解的大部分内容都是不可搜索的符号(例如@{})。

答案1

关于你的例子:

\begin{document}\vspace*{-1.5in}

你说得对,这不是一个好的解决方案。geometry如果你想要更改边距,就使用这个(但实际上,如果你使用letter类间距,应该小心处理;这并不是说在简历中使用字母是最好的主意)。

\begin{tabular*}{\linewidth}{@{}l@{\extracolsep{\fill}} p{5cm}@{}}

因此,您要定义两列:一列左对齐l,一列固定宽度(对齐)p。该@{}部分只是删除了行前后插入的小水平额外空间。只是@{\extracolsep{\fill}}将第二列向右对齐。

要使第二列右对齐,有三个基本选项:

  • 使用r-column (如果不需要换行符)
  • 使用array包并指定>{\raggedleft\arraybackslash}p{5cm}
  • 使用array软件包(最新版本)和一个简单的wr{5cm}

相关内容