我正在尝试用LaTeX写一篇简短的论文,需要添加一个包含3列的表。
+-------------+-----------------+--------------------------------------+
| AAAAAAAAAA | BBBBBBBBBBBBBBB | Betty Botter Bought a Bit of Butter |
| | | but the Butter's Bitter |
+-------------+-----------------+--------------------------------------+
| CCCCCCCC | DDDD | Betty Botter Thought: |
| | | If I Put This Bitter Butter in My |
| | | Batter it Will Make My Batter Bitter |
+-------------+-----------------+--------------------------------------+
不幸的是,我似乎无法找到正确的习惯用法。
我试过了:
\begin{tabular}{lll}
AAAAAAAAAA & BBBBBBBBBBBBBBB & Betty Botter Bought a Bit of Butter but
the Butter's Bitter \\
CCCCCCCC & DDDD & Betty Botter Thought: \newline If I Put This Bitter Butter in My Batter it Will Make My Batter Bitter
\end{tabular}
但是LaTeX不会在单元格中进行任何换行或格式化。我想我需要告诉它这样做..但是怎么样?
答案 0 :(得分:73)
使用p
列描述符:
更改
\begin{tabular}{lll}
到
\begin{tabular}{llp{5cm}}
显式插入换行符:
CCCCCCCC & DDDD & \parbox{5cm}{Betty Botter Thought: \\ If I Put This Bitter Butter in My Batter it Will Make My Batter Bitter}
答案 1 :(得分:5)
这是我到目前为止根据我的需求找到的答案:Link here。
它创建了一个新命令,它将以更恰当的方式在表中创建表:
\newcommand{\specialcell}[2][c]{%
\begin{tabular}[#1]{@{}c@{}}#2\end{tabular}}
所以,如果想在像这里的单元格内强制换行一样:
\begin{tabular}{|c|c|c|}
\hline
Foo bar & Foo <forced line break here> bar & Foo bar \\
\hline
\end{tabular}
您将最终使用这样的代码:
Foo bar & \specialcell{Foo\\bar} & Foo bar \\ % vertically centered
Foo bar & \specialcell[t]{Foo\\bar} & Foo bar \\ % aligned with top rule
Foo bar & \specialcell[b]{Foo\\bar} & Foo bar \\ % aligned with bottom rule
通过将 c @ 更改为 l @ 或 r @
,可以在新命令的声明中控制水平对齐所有赠送金额均来自egreg
的Tex forum答案 2 :(得分:0)
正如@aioobe在他的回答中所写,在这种情况下,可以从左对齐切换到
\begin{tabular}{lll}
与 paragraph 对齐,至少在第三行中必须手动插入自定义换行符:
\begin{tabular}{llp{.5\textwidth}}
进行此编辑后,可以使用命令\par
(而不是\newline
)在单元格内实现换行。
此代码:
\documentclass{article}
\begin{document}
\begin{tabular}{llp{.5\textwidth}}
AAAAAAAAAA & BBBBBBBBBBBBBBB & Betty Botter Bought a Bit of Butter \par but the Butter's Bitter\\
CCCCCCCC & DDDD & Betty Botter Thought: \par If I Put This Bitter Butter in My \par Batter it Will Make My Batter Bitter\\
\end{tabular}
\end{document}
产生请求的输出:
答案 3 :(得分:-1)
这是一个没有花哨的编码的答案。将行写在单独的行中。除了最后一行(线)之外,除了最后一行(线)之外,除了\ hline它快速而肮脏但是,嘿,它的工作原理并且正确地给出了我想要的东西,无论如何。我正在制作广告,继续使用汽车挡风玻璃。我在每个单元格中有3个居中的行
iTutor Grahamstown
Mathematics Tutor
0793296211
我想在表格中重复这一点。我刚刚排除前两行的\ hline。多个\ hlines和'|'是为了使打印输出更容易。
\begin{tabular}{||c||c||c||c||}
\hline\hline
iTutor Grahamstown &iTutor Grahamstown&iTutor Grahamstown &iTutor Grahamstown \\ %No \hline
Mathematics Tutor & Mathematics Tutor & Mathematics Tutor&Mathematics Tutor \\ %No \hline
0793296211 & 0793296211 & 0793296211 & 0793296211\\ \hline\hline\hline %\hline now
\end{tabular}
我希望这会有所帮助。