我正在尝试修改给出的食谱先前的答复这样最右边的列(共两列)就是右对齐的。
这是我正在使用的玩具示例:
\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}