LaTeX表格超出页面宽度,如何实现SQL与MongoDB术语对应表?
你当前代码出现表格超宽的核心原因是使用了默认的c列格式,且添加了大量无内容的空行与横线,会强制列宽自动拉伸到撑满页面,最终溢出。以下是两种可直接使用的修改方案:
方案1:无需额外包的固定宽度实现
直接修改列格式为固定宽度的p列,自行控制两列总宽度不超过页面宽度即可,示例代码如下:
\begin{center} \begin{tabular}{p{0.45\textwidth}|p{0.45\textwidth}} \centering\textbf{SQL} & \centering\arraybackslash\textbf{MONGODB} \\ \hline Database \newline \small 存储结构化数据的顶层容器 & Database \newline \small 存储集合的顶层容器 \\ \hline Table \newline \small 结构化的行数据集合 & Collection \newline \small 无固定结构的文档集合 \\ \hline Row \newline \small 表内的单条结构化数据记录 & Document \newline \small 集合内的单条BSON格式数据记录 \\ \hline Column \newline \small 表内定义的单个数据字段 & Field \newline \small 文档内的单个键值对属性 \\ % 后续对应条目按相同格式继续添加即可 \end{tabular} \end{center}
方案2:更灵活的自动宽度实现
无需手动计算列宽,借助tabularx包自动适配页面宽度:
- 首先在文档导言区引入依赖包:
\usepackage{tabularx} - 修改表格代码为:
\begin{center} \begin{tabularx}{\linewidth}{X|X} \centering\textbf{SQL} & \centering\arraybackslash\textbf{MONGODB} \\ \hline Database \newline \small 存储结构化数据的顶层容器 & Database \newline \small 存储集合的顶层容器 \\ \hline Table \newline \small 结构化的行数据集合 & Collection \newline \small 无固定结构的文档集合 \\ \hline Row \newline \small 表内的单条结构化数据记录 & Document \newline \small 集合内的单条BSON格式数据记录 \\ \hline Column \newline \small 表内定义的单个数据字段 & Field \newline \small 文档内的单个键值对属性 \\ \end{tabularx} \end{center}
两种方案修改后表格都不会出现溢出问题,列内文本过长时会自动换行,完全匹配目标表格的效果。
内容的提问来源于stack exchange,提问作者mmithoefer
相关产品推荐
相关产品推荐

