LaTeX-设置表格大小

文章目录

  • LaTeX-设置表格大小
    • 1.创建表格
    • 2.设置表格的宽度
      • 2.1控制表格每一列的宽度
      • 2.2控制整个表格的宽度
    • 3.设置表格的外观
    • 4.LaTeX绘制三线表

LaTeX-设置表格大小

本文介绍了LaTeX如何设置表格的大小、改变表格的外观以及如何绘制三线表。

1.创建表格

在LaTeX中创建表很耗时,因此建议使用TablesGenerator.com在线工具为表导出LaTeX代码。

下面是用LaTeX代码创建一个表的示例:

\begin{center}
\begin{tabular}{ c c c }cell1 & cell2 & cell3 \\ cell4 & cell5 & cell6 \\  cell7 & cell8 & cell9    
\end{tabular}
\end{center}

tabular环境是LaTeX中创建表格的默认方法。您必须为这个环境指定一个参数;在这里我们使用{c c c},这告诉LaTeX有三列,并且每一列中的文本都必须居中对齐。

tabular环境提供了额外的灵活性;例如,可以在每列之间放置分隔线。您可以通过在列参数中加入|符号来实现这一点,比如{c|c|c}表示有三列,每列之间都有垂直分隔线。如果想在表格顶部和底部添加水平分隔线,可以在tabular环境的开始和结束处使用\hline命令。

\begin{center}
\begin{tabular}{ |c|c|c| } \hlinecell1 & cell2 & cell3 \\ cell4 & cell5 & cell6 \\  cell7 & cell8 & cell9 \\  \hline
\end{tabular}
\end{center}

image-20240301175239975

这里是上述示例中使用的构造的描述:

  • { |c|c|c| }:这声明了一个表格将使用三列,每列之间由一条垂直线分隔。每个c表示列中的内容将被居中对齐。您也可以使用r来使文本右对齐,使用l来使文本左对齐。
  • \hline:这将在表格顶部和底部插入一条水平线。您可以多次使用\hline,没有限制。
  • cell1 & cell2 & cell3 \\:每个&是一个单元格分隔符,双反斜杠\\设置了此行的结束。

2.设置表格的宽度

2.1控制表格每一列的宽度

当格式化表格时,可能需要为每列或整个表格设置固定宽度。下面的例子在文档导言区添加了array包:\usepackage{array}并使用它来设置固定的列宽度。

在这种情况下,可以使用像p{width}这样的列类型来定义固定宽度的列,其中width是你希望该列具有的宽度。例如,如果您希望有三列,每列宽度分别为2cm、3cm和4cm,您可以在tabular环境中这样指定列格式:

\begin{tabular}{|p{2cm}|p{3cm}|p{4cm}|}
...
\end{tabular}

这样,每列就会有指定的固定宽度,文本如果超过列宽会自动换行。这对于创建需要精确对齐的复杂表格特别有用。


\documentclass{article}
\usepackage{array}
\begin{document}
\begin{center}
\begin{tabular}{ | m{5em} | m{1cm}| m{1cm} | } \hlinecell1 dummy text dummy text dummy text& cell2 & cell3 \\ [1ex]\hlinecell1 dummy text dummy text dummy text & cell5 & cell6 \\\hlinecell7 & cell8 & cell9 \\ [3cm]\hline
\end{tabular}
\end{center}
\end{document}

tabular环境中,参数m{5em}为第一列设置了5em的宽度(其他两列为1cm),并将文本居中于单元格中间。对齐选项有m代表中间,p代表顶部,b代表底部。使用这些参数时,文本会自动格式化以适应每个单元格内部。

[3cm]为单元格增加了额外的空间。

image-20240301182515335

2.2控制整个表格的宽度

如果不需要控制每个单元格的宽度,而是需要控制整个表格的宽度,并且然后均匀分配内部空间,那么使用tabularx包。

\documentclass{article}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{0.8\textwidth} { | >{\raggedright\arraybackslash}X | >{\centering\arraybackslash}X | >{\raggedleft\arraybackslash}X | }\hlineitem 11 & item 12 & item 13 \\\hlineitem 21  & item 22  & item 23  \\
\hline
\end{tabularx}
\end{document}

tabularx环境类似于tabular,但更加灵活。要使用它,请在文档导言区添加行\usepackage{tabularx}。注意,环境开头声明是不同的,在示例中表格宽度被设置为0.8\textwidth,即文档文本宽度的80%。可以使用任何LaTeX单位来设置该值。

大括号内的前缀| >{\raggedright\arraybackslash}X | >{\centering\arraybackslash}X | >{\raggedleft\arraybackslash}X |设置了每列的对齐方式:第一列向左对齐,第二列居中对齐,第三列向右对齐。

3.设置表格的外观

有时可以通过增加列间距和行长度来提高表的美观性。

\documentclass{article}
\setlength{\arrayrulewidth}{0.5mm}
\setlength{\tabcolsep}{18pt}
\renewcommand{\arraystretch}{1.5}
\begin{document}
\begin{tabular}{ p{3cm} p{3cm} p{3cm}  }
\hline
\multicolumn{3}{c}{Country List} \\
\hline
Country Name or Area Name& ISO ALPHA 2 Code &ISO ALPHA 3 \\Afghanistan & AF &AFG \\
Aland Islands & AX   & ALA \\
Albania &AL & ALB \\
Algeria    &DZ & DZA \\
American Samoa & AS & ASM \\
Andorra & AD & AND   \\
Angola & AO & AGO \\
\hline
\end{tabular}
\end{document}

以下是对命令的描述:

  • \setlength{\arrayrulewidth}{0.5mm}:这设置了表格边框的厚度为0.5mm。
  • \setlength{\tabcolsep}{18pt}:此命令设置了文本与其包含单元格的左/右边框之间的空间为18pt。
  • \renewcommand{\arraystretch}{1.5}:每行的高度被设置为其默认高度的1.5倍。
缩写描述
pt约等于1/72.27英寸,大约0.0138英寸或0.3515毫米。精确定义为美国打印师脚的1/864,即英尺的249/250。
mm毫米一毫米。
cm厘米一厘米。
in英寸一英寸。
ex大致等于当前字体中小写x的高度(取决于使用的字体)。
em大致等于当前字体中大写M的宽度(取决于使用的字体)。
mu数学单位等于1/18 em,其中em是从数学符号族中取得。
sp特殊点一种低级测量单位,其中65536sp=1pt。

image-20240301184458063

在overleaf中打开查看示例程序

4.LaTeX绘制三线表

% !TeX program = xelatex
\documentclass{article}
\usepackage{booktabs} % 引入booktabs包以使用增强的表格线命令
\usepackage{ctex} % 引入ctex宏包才可以显示中文,以及代码中的第一行\begin{document}\begin{table}[htbp]
\centering % 表格居中
\caption{示例三线表} % 表格标题
\label{tab:example} % 表格引用标签
\begin{tabular}{ccc} % 三列都居中对齐
\toprule % 顶部粗线
列标题1 & 列标题2 & 列标题3 \\
\midrule % 中间细线
数据1 & 数据2 & 数据3 \\
数据4 & 数据5 & 数据6 \\
\bottomrule % 底部粗线
\end{tabular}
\end{table}\end{document}

image-20240301191802833

在这个示例中,\usepackage{booktabs}引入了booktabs包,它提供了\toprule\midrule\bottomrule命令来分别绘制顶部、中间和底部的线条,使得表格具有更好的视觉效果和更清晰的层次结构。表格的标题使用\caption命令设置,而\label命令用于之后引用表格。表格环境开始于\begin{table},结束于\end{table},而实际的表格内容则位于\begin{tabular}\end{tabular}之间。

😃😃😃

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/505381.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

算法修炼-动态规划之路径问题(1)

62. 不同路径 - 力扣(LeetCode) 思路:选定一个网格为终点,走到这个网格的所有走法就是这个网格的上面一个网格的所有走法加上这个网格左边一个网格的所有走法,然后做好初始化工作就行。 class Solution { public:int…

扼杀网络中的环路:STP、RSTP、MSTP

目录 前言: 一、STP(Spanning Tree Protocol) 1.1 STP功能 1.2 STP应用 二、RSTP(Rapid Spanning Tree Protocol) 2.1 RSTP功能 2.2 RSTP应用 三、MSTP(Multiple Spanning Tree Protocol&#xff0…

【中英对照】【自译】【精华】麻省理工学院MIT技术双月刊(Bimonthly MIT Technology Review)2024年3/4月刊内容概览

一、说明 Notation 仅供学习、参考,请勿用于商业行为。 二、本期封面、封底 Covers 本期杂志购于新加坡樟宜机场Changi Airport Singapore,售价为20.50新元。 本期仍然关注伦敦的AI大会。(笔者十分想去,在伦敦和MIT校园均设有会…

SpringBoot整合rabbitmq-扇形交换机队列(三)

说明:本文章主要是Fanout 扇形交换机的使用,它路由键的概念,绑定了页无用,这个交换机在接收到消息后,会直接转发到绑定到它上面的所有队列。 大白话:广播模式,交换机会把消息发给绑定它的所有队…

进程间的通信 -- 共享内存

一 共享内存的概念 1. 1 共享内存的原理 之前我们学过管道通信,分为匿名管道和命名管道,匿名管道通过父子进程的属性继承原理来完成父子进程看到同一份资源的目的,而命名管道则是通过路径与文件名来唯一标识管道文件,来让不同的进…

【系统分析师】-需求工程

一、需求工程 需求工程分为需求开发和需求管理。 需求开发:需求获取,需求分析,需求定义、需求验证。 需求管理:变更控制、版本控制、需求跟踪,需求状态跟踪。(对需求基线的管理) 1.1需求获取…

02-设计概述

上一篇:01-导言 本章重点讨论 JNI 中的主要设计问题。本节中的大多数设计问题都与本地方法有关。调用 API 的设计将在第 5 章:调用 API 中介绍。 2.1 JNI 接口函数和指针 本地代码通过调用 JNI 函数来访问 Java 虚拟机功能。JNI 函数可通过接口指针使用…

如何实现桌面美化

一.隐藏桌面图标 1. 在商店里下载TranslucentTB 二.设置底层图标 1.下载Nexus 打开官网: Winstep Nexus Dock and Nexus Ultimate - The Advanced Docking System for Windows 三.设置插件 1.打开致美化官网 致美化 - 最专业的视觉美化交流平台 (zhutix.com) 2.注…

MySQL进阶:全局锁、表级锁、行级锁总结

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:MySQL进阶:MySQL事务、并发事务问题及隔离级别 📚订阅专栏:MySQL进阶 希望文章对你们有所帮助…

swagger在java中的基本使用

自动生成接口文档&#xff0c;和在线接口测试的框架。 导入依赖 <!-- knife4j对swagger进行一个封装--><dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><versi…

LeetCode 刷题 [C++] 第121题.买卖股票的最佳时机

题目描述 给定一个数组 prices &#xff0c;它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票&#xff0c;并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的…

Linux笔记--系统相关指令

一、系统资源观察 1. df 指令&#xff08;显示文件系统磁盘使用情况统计&#xff09; disk free&#xff0c;显示文件系统磁盘使用情况统计 #以高可读性的形式显示磁盘使用情况统计 df -h (挂载:利用一个目录当成进入点&#xff0c;将磁盘分区槽的数据放置到该目录下&…