如何在LaTeX表格中包装文字?

我正在LaTeX中创建一个涉及几个表格的报告。 由于表格中的单元格数据超出了页面的宽度,所以我被困在那里。 我是否可以以某种方式包装文本,使其落入表格的同一单元格中的下一行?

它与表格的宽度有什么关系? 但是,由于它超出页面的宽度,它不会有什么区别,是吗?


使用p {width}代替你的列说明符而不是l / r / c。

begin{tabular}{|p{1cm}|p{3cm}|}
  This text will be wrapped & Some more text 
end{tabular}

使用常规tabular环境时,您需要使用p{width}列类型,如marcog所示。 但是这迫使你给出明确的宽度。

另一个解决方案是tabularx环境:

usepackage{tabularx}
...
begin{tabularx}{linewidth}{ r X }
    right-aligned foo & long long line of blah blah that will wrap when the table fills the column width
end{tabularx}

所有X列获得相同的宽度。 您可以通过在格式声明中设置hsize来影响这一点:

>{setlengthhsize{.5hsize}} X >{setlengthhsize{1.5hsize}} X

但所有的因素必须总结为1,我想(我从LaTeX的伴侣那里得到这个)。 也有包装tabulary ,它将调整列宽以平衡行高。 有关详细信息,可以使用texdoc tabulary (在TeXlive中)获取每个包的文档。


另一种选择是在需要文本换行的每个单元中插入一个小型文件,例如:

begin{table}[H]
begin{tabular}{l}
begin{minipage}[t]{0.8columnwidth}%
a very long line a very long line a very long line a very long line
a very long line a very long line a very long line a very long line
a very long line a very long line a very long line %
end{minipage}tabularnewline
end{tabular}
end{table}
链接地址: http://www.djcxy.com/p/33405.html

上一篇: How to wrap text in LaTeX tables?

下一篇: File local variables in Emacs