[翻译] [Overleaf] 在 LaTeX 中创建一个文档

2023-10-17 12:50

本文主要是介绍[翻译] [Overleaf] 在 LaTeX 中创建一个文档,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原  文:Creating a document in LaTeX
译  者:Xovee
翻译时间:2020年5月23日

LaTeX 是一个非常棒的创建文档的工具。它基于 “WYSIWYM” 理念(你见到的就是你所想表达的),你只需要关注于文档的内容,让计算机来帮助你处理文档的格式和排版。你可以非常轻松地使用 LaTeX 来创建专业的文档。这篇文档将教会你如何在 LaTeX 中创建一个文档。

文章目录

  • 介绍
  • 文档的序言(preamble)
  • 显示你文档的标题
  • 基础的排版:摘要、段落和换行
  • 注释
  • 参考指南
  • 延伸阅读

介绍

让我们首先来看一个最简单的例子:

\documentclass{article}\begin{document}
First document. This is a simple example, with no 
extra parameters or packages included.
\end{document}

在这里插入图片描述
这个例子的输入是一个只含有纯文字的 .tex 文件,它包含了可以让计算机创建 PDF 文档的代码。代码的第一行定义了文档的类型,article,然后,在 \begin{document}\end{document} 两个标签之间,你可以书写文档的正文。

注意:关于如何生成输出文件,请参考这篇文章

在 Overleaf 中打开这个例子。

文档的序言(preamble)

在之前的例子中,正文的范围是在 \begin{document} 之后。而在这个命令之前的内容,被称作文档的序言 preamble。在文档的序言之中,你定义将要创建的文档类型和文档语言,加载你需要的外部包,并设置各种参数。下面展示了一个标准的文档序言:

\documentclass[12pt, letterpaper]{article}
\usepackage[utf8]{inputenc}\title{First document}
\author{Hubert Farnsworth \thanks{funded by the Overleaf team}}
\date{February 2014}

下面是每一行代码的说明:

\documentclass[12pt, letterpaper]{article}
像之前的例子一样,这行代码定义了文档的类型。你可以在方括号中使用逗号分割的参数。在这个例子中,额外的参数包括:设置字体大小(12pt)和纸张大小(letterpaper)。当然,你也可以设置其他数值的字体大小(9pt、11pt),默认的字体大小是 10pt。纸张大小的参数值还包括:A4 和 legalpaper。需要注意的是,Overleaf 使用了一种欧洲的 LaTeX 发行版,也就是说,它默认的纸张大小是 A4。参考我们的文档(纸张大小和边距)来获取更多有关使用 Geometry 包来设定排版参数的信息。

\usepackage[utf8]{inputenc}
这一行代码设定了文档的编码形式(utf8),来允许你输入更多种类的字符(不仅仅是 ASCII,例如输入 à, ü, č …)。你可以忽略这行代码,或者使用另外一种编码,但是我们强烈推荐 utf-8。除非你有确切的理由使用另外一种编码,当你不确定使用哪种编码的时候,请在序言中添加这一行代码。

下面的三行代码是非常容易去理解的。不管怎么样,我们将在下一节中介绍这些命令。

还有两个非常重要的参数可以传递给 \documentclass,即 twocolumntwoside,如果你想使用一种双栏的布局,或者双面打印的布局的话。

在 Overleaf 中打开这个例子。

显示你文档的标题

为了在文档中显示标题,你需要在序言之中定义一些额外的信息:

\documentclass[12pt, letterpaper, twoside]{article}
\usepackage[utf8]{inputenc}\title{First document}
\author{Hubert Farnsworth \thanks{funded by the Overleaf team}}
\date{February 2014}\begin{document}\begin{titlepage}
\maketitle
\end{titlepage}In this document some extra packages and parameters
were added. There is an encoding package
and pagesize and fontsize parameters.\end{document}

在这里插入图片描述
序言中的三行代码定义了标题页中所要展示的信息。

\title{First document}
这是标题。

\author{Hubert Farnsworth}
你可以在这里添加一个或多个作者。作为一个可选的参数,你还可以添加下面这个命令:

\thanks{funded by the Overleaf team}
这个命令可以被添加在\author命令的内部,作者名字的后面。它会在作者名后添加一个上标,并且在当前页添加一个脚注来显示该命令的内容。当你需要感谢一个机构的时候,这个命令非常有用。

\date{February 2014}
你可以手动输入日期,或者使用\today命令来在每次编译之后显示最新的日期。

当你搞定了序言之后,你可以使用下面的指令来显示序言中所定义的内容:

\begin{titlepage} \end{titlepage}
这个命令定义了一种环境,在这个例子中,不管你在 titlepage 中定义了什么内容,它都将显示在文档的第一页。

\maketitle
这个命令将会显示你之前定义的标题、作者和日期。如果这个命令没有出现在 titlepage 环境之中,那么序言中所定义的内容将会出现在文档的开头。

在 Overleaf 中打开这个例子。

基础的排版:摘要、段落和换行

任何出现在 \begin{document}\end{document} 之间的内容,都将会出现在文档的正文之中。

\documentclass[12pt, letterpaper, twoside]{article}
\usepackage[utf8]{inputenc}\begin{document}\begin{abstract}
This is a simple paragraph at the beginning of the document. A brief introduction to the main subject.
\end{abstract}In this document some extra packages and parameters
were added. There is an encoding package,
and pagesize and fontsize parameters.This line will start a second paragraph. And I canbreak\\ the lines \\ and continue on a new line.\end{document}

在这里插入图片描述
通常来说,在科研论文写作之中,我们需要写一段简短的摘要来说明文章的大体内容。你可以使用 abstract 环境来做到这一点。abstract 环境将会用一种特殊的格式来将其中的文字置于文档的顶部。

在书写文档的正文的时候,如果你需要换行,那么你需要点击 Enter 按键两次(输入一个空白行)。需要注意的是,段落在它的开始有一个空格。

你可以使用\\,或者\newline,来使文字换行。

你可以在段落和换行中找到更多的信息。

有关更多文档结构的讨论,请参考文档的章节。

在 Overleaf 中打开这个例子。

注释

有时候你可以在 LaTeX 代码之中添加注释来增强文档的可读性。在文字之前添加 %,LaTeX 将会忽略该行其后的文字。

\documentclass{article}
\usepackage[utf8]{inputenc} %codification of the document\usepackage{comment}%Here begins the body of the document
\begin{document}
This document contains a lot of comments, none of them
will appear here, only this text.This document contains a lot of comments, none of them
will appear here, only this text.\begin{comment}
This text won't show up in the compiled pdf
this is just a multi-line comment. Useful
to, for instance, comment out slow-rendering parts
while working on a draft.
\end{comment}\end{document}

在这里插入图片描述
在这个例子的最后一个部分,你可以看到一个 comment 环境,你可以使用它来注释多行内容。为了使用这个指令,你必须在序言中引入 comment 包:

\usepackage{comment}

因为 % 符号使一个保留符号,如果你想在文档中真正显示这个符号,使用\%。完整的保留符号列表如下:

参考指南

你可以在 \documentclass 中使用的文档类型:

文档类型描述
article对于短的文章和期刊文章,这个类型是最常用的。
report更长的文章和学位论文,使用这个类型
book用来书写一本书
letter用来写信
slides极少使用
beamer使用 beamer 类样式的 slides,更多信息请参考这篇文章

保留符号
下面的符号是 LaTeX 的保留符号,它们被用来生成指令,或者有其他特殊的用途。

# $ % ^ & _ { } ~ \

如果你想在文档中显示这些符号,需要一些特殊的技巧:

符号作用如何去显示它
#宏参数\#
$数学模式$
%注释\%
^上标(数学模式)\^{} 或 \textasciicircum
&在表格中分割列\&
_下标(数学模式)\_
{}处理块{}
~不可分割的空格\textasciitilde 或 \~{}
\指令的开始符\textbackslash 或 \

延伸阅读

  • 选择一个 LaTeX 编译器
  • 段落和换行
  • 粗体、斜体、下划线
  • 列表
  • 数学
  • LaTeX中的参考文献
  • 图片
  • 表格
  • 一篇并不短的 LaTeX 介绍

这篇关于[翻译] [Overleaf] 在 LaTeX 中创建一个文档的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/225517

相关文章

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创

Python使用python-docx实现自动化处理Word文档

《Python使用python-docx实现自动化处理Word文档》这篇文章主要为大家展示了Python如何通过代码实现段落样式复制,HTML表格转Word表格以及动态生成可定制化模板的功能,感兴趣的... 目录一、引言二、核心功能模块解析1. 段落样式与图片复制2. html表格转Word表格3. 模板生

浅谈Redis Key 命名规范文档

《浅谈RedisKey命名规范文档》本文介绍了Redis键名命名规范,包括命名格式、具体规范、数据类型扩展命名、时间敏感型键名、规范总结以及实际应用示例,感兴趣的可以了解一下... 目录1. 命名格式格式模板:示例:2. 具体规范2.1 小写命名2.2 使用冒号分隔层级2.3 标识符命名3. 数据类型扩展命