当前位置: 首页 > 科技观察

使用LaTeX创建漂亮的PDF

时间:2023-03-17 20:09:31 科技观察

LaTeX文件准备系统有一段有趣的历史。1968年,程序员DonKnuth用老式的排版方式写出了他的第一本书《计算机程序设计艺术The Art of Computer Programming》。到1976年他出版第二版时,出版商已转向现代照相排版。Knuth对新版本的外观不满意。他从程序员的角度解决了这个问题,并决定创建自己的文字处理系统,以便他出版的书籍在未来可以采用相同的格式并具有相同的外观。因此DonKnuth在1978年编写了第一个版本的TeX。几年后,LeslieLamport创建了一组宏定义,使作者更容易编写复杂的文档。Lamport的宏定义扩展LaTeX有效地扩展了TeX轻松创建各种文档的能力。例如,许多学术组织使用LaTeX来出版期刊和论文集。使用LaTeX编写文档通过编写短文可以轻松掌握LaTeX的基础知识。让我们借用Opensource.com的介绍页面来创建一个示例:$catabout.tex\documentclass{article}\begin{document}Opensource.com是主要的每日出版物,专注于开源和Linux教程、故事和资源.我们是一个多元化且富有吸引力的团队,由编辑、通讯员、撰稿人和读者组成。我们重视技能、才能、背景和经验方面的差异。作为读者或作家,有几种不同的方式可以参与进来。\end{document}与其他文档格式化程序一样,LaTeX会将单个单词组合在一起以填充段落。这意味着您可以在段落中间添加新文本,而不必担心生成的文档中的段落参差不齐。只要您不在段落中添加空行,LaTeX就会创建完美对齐的段落。当它找到一个空白行时,LaTeX开始一个新段落。LaTeX需要一些定义文档的控制语句。任何LaTeX文档都应该以“文档类”声明开头。LaTeX支持多种文档,包括信件、书籍和文章。例如,我使用\documentclass{article}将类设置为“文章”。使用\begin{document}和\end{document}声明来定义文本的开始和结束。如果在\begin{document}之前添加文字,LaTeX会报错。\end{document}之后的文本将被忽略。使用LaTeX的latex命令处理文档:$latexabout.texThisispdfTeX,Version3.141592653-2.6-1.40.22(TeXLive2021)(preloadedformat=latex)restricted\write18enabled.进入扩展模式(./about.texLaTeX2e<2020-10-01>补丁级别4(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls文档类:文章2020/04/10v1.4m标准LaTeX文档类(/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo))(/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-dvips.def)Nofileabout.aux.[1](./about.aux))输出写在about.dvi上(1页,736字节)。写在about.log.LaTeX上的Transcript会输出很多文本,所以你可以告诉它在做什么。如果您的文档包含错误,LaTeX将报告错误并建议它可以做什么。在大多数情况下,您可以通过在提示符下键入exit来强制退出LaTeX。如果使用LaTeX成功生成文档,将生成一个后缀为.dvi的文件。DVI代表“DeviceIndependent”,因为您可以使用不同的工具来生成其他格式。例如,dvipdf程序可以将DVI文件转换为PDF文件。$dvipdfabout.dviLaTeX输出添加列表LaTeX支持两种列表:以数字开头的“枚举”列表,以及“逐项”或“项目符号”列表。在人们参与Opensource.com的方式的第二段之后添加一个简短的枚举:\begin{enumerate}\itemBeawriter\itemBeareader\end{enumerate}添加\begin和\endtodocumentdefinitions与此类似,您还需要在列表前后添加\begin和\end语句。在列表中,每个项目都以\item命令开头。当您使用LaTeX处理文档并将其转换为PDF格式时,您将看到列表作为数字列表:LaTeX输出您还可以在列表中嵌套列表。如果您需要为列表中的每个项目添加选项,这是一个优雅的功能。例如,您可以为想成为Opensource.com作者的人提供一些不同的资源。嵌入式列表使用单独的\begin和\end语句。为方便起见,我在示例中添加了空行,但LaTeX忽略了这些空行:}\itemBeareader\end{enumerate}作为嵌套列表,新列表嵌入到项目编号1中,因为您在原始\item声明之间添加了列表。您可以通过在\end{enumerate}语句之前将新列表添加为编号为2的嵌套列表。LaTeX输出章节和小节您可以将冗长的文章分成章节,这样更容易阅读。使用\section{...}语句在大括号内添加章节标题。例如,您可以在文档顶部添加一个标题为“关于Opensource.com”的新部分:$headabout.tex\documentclass{article}\begin{document}\section{AboutOpensource.com}开源。com是主要的每日出版物,重点关注开源和Linux教程、故事和资源。我们是一个多元化且富有吸引力的团队,由编辑、通讯员、撰稿人和读者组成。我们文章Documentation类在每个主要章节中都添加了数字,并放大了字体以突出显示它们。LaTeX输出您可以使用\subsection{...}命令来组织文档。就像\section{...}命令一样,在大括号中输入副标题名称。$headabout.tex\documentclass{article}\begin{document}\section{AboutOpensource.com}Opensource.com是主要的每日出版物,专注于开源和Linux教程、故事和资源。\subsection{欢迎来到Opensource.com社区}已发表科学文章的LaTeX输出标题和作者需要标题、作者和出版日期。LaTeX提供了一种通过插入命令来添加这些信息的方法,然后使用单独的\maketitle命令来生成文章的标题。使用“关于我们”作为文章标题,作者为“Opensource.comEditors”,发布日期为“2022年7月10日”。您必须在\begin{document}之后,文章内容之前插入这些内容。\title{AboutUs}\author{Opensource.comEditors}\date{July10,2022}\maketitle制作文档时,LaTeX会在文章顶部添加标题、作者和日期:LaTeX输出强调科学和其他技术文章通常会突出显示术语和短语。LaTeX提供了几种可用于技术文档的字体效果,包括强调文本(通常以斜体显示)、粗体文本和小型大写字母。将短语“staffeditors,Correspondents,contributors,andreaders”放在斜体文本中,并将特定词“reader”和“writer”放在段落后面的强调文本中。您还可以将“技能、??才能、背景和经验”加粗。虽然这不是正确的样式设置方式,但您可以使用小型大写字母来键入“Linux”。$head-20about.tex\documentclass{article}\begin{document}\title{关于我们}\author{Opensource.com编辑}\date{2022年7月10日}\maketitle\section{关于Opensource.com}开源.com是主要的每日出版物,专注于开源和\textsc{Linux}教程、故事和资源。\subsection{欢迎来到Opensource.com社区}我们是一个多元化且富有吸引力的团体,由\textit{编辑、通讯员、贡献者和读者}组成。我们重视\textbf{技能、才能、背景和经验}的差异。作为\emph{reader}或\emph{writer}有几种不同的参与方式。此示例显示如何将不同的样式应用于文本。当您需要强调时,使用\emph{...}命令,将强调的主题括在花括号中。要以斜体、粗体或小型大写字母显示文本,请使用\text命令的变体:\textit{...}用于斜体,\textbf{...}用于粗体,以及\textsc{...}对于小型大写字母。LaTeX支持许多其他方式来设置文本样式,这些方式可以帮助您撰写科技文章。LaTeX输出使用LaTeX我刚刚介绍了几种使用LaTeX撰写科技文章的方法。您还可以根据需要在LaTeX中添加脚注、排版数学公式和方程式。您还可以阅读Opensource.com中的文章《在 LaTeX 中创建文档的介绍》,了解使用LaTeX撰写科技文章的其他方法。