From e289d4c5ff60d6c5f1737b21676d90ee2aad0e27 Mon Sep 17 00:00:00 2001 From: louisstuart96 Date: Sat, 1 Sep 2018 17:32:20 +0800 Subject: [PATCH] lshort-zh-cn v6.0 Accumulative update of Chinese version of lshort. --- src/chap/app.A.install.tex | 2 +- src/chap/biblio.tex | 2 +- src/chap/chap.01.basics.tex | 85 ++++++------ src/chap/chap.02.text.tex | 32 ++--- src/chap/chap.03.elements.tex | 9 ++ src/chap/chap.04.math.tex | 60 ++++---- src/chap/chap.05.style.tex | 75 +++++----- src/chap/chap.06.spec.tex | 24 ++-- src/chap/chap.07.graphic.tex | 248 ++++++++++++++++++++++------------ src/chap/chap.08.custom.tex | 2 +- src/chap/preface.overview.tex | 2 +- src/chap/sec.symbol.table.tex | 6 +- src/chap/titlepage.tex | 6 +- src/lshort-zh-cn.tex | 2 +- 14 files changed, 314 insertions(+), 241 deletions(-) diff --git a/src/chap/app.A.install.tex b/src/chap/app.A.install.tex index ae7d3b1..0912161 100644 --- a/src/chap/app.A.install.tex +++ b/src/chap/app.A.install.tex @@ -25,7 +25,7 @@ \section{\protect\TeX\ 发行版简介}\label{sec:dists} \end{itemize} \TeX\ Live 和 Mik\TeX\ 都集成了一个简单的 \LaTeX\ 源代码编辑器 \TeX works(Mac\TeX\ 则集成了类似的 \TeX shop)。 -用户在完成发行版的安装后,可直接打开编辑器开始编写 \LaTeX\ 源代码。 +用户在安装完毕,可直接使用 \TeX works 编写和编译 \LaTeX\ 源代码。 \subsection{安装发行版}\label{subsec:install-dists} diff --git a/src/chap/biblio.tex b/src/chap/biblio.tex index 6348767..dd27fdd 100644 --- a/src/chap/biblio.tex +++ b/src/chap/biblio.tex @@ -89,7 +89,7 @@ \newblock \emph{The \LaTeX\ font catalogue}, a font catalogue of \LaTeX\ font packages.\\ \url{http://www.tug.dk/FontCatalogue/} -\bibitem{ltxprimer} Indian \TeX\ user group. +\bibitem{ltxprimer} Indian \TeX\ users group. \newblock \emph{\LaTeX\ Tutorials: A primer}. \\ \url{http://www.tug.org/twg/mactex/tutorials/ltxprimer-1.0.pdf} diff --git a/src/chap/chap.01.basics.tex b/src/chap/chap.01.basics.tex index 6eef016..eeea09e 100644 --- a/src/chap/chap.01.basics.tex +++ b/src/chap/chap.01.basics.tex @@ -18,7 +18,7 @@ \subsection{\protect\TeX}\label{subsec:tex} \TeX\ 排版引擎发布于 1982 年,在 1989 年又加以改进以更好地支持 8-bit 字符和多语言排版。 \TeX\ 以其卓越的稳定性、跨平台、几乎没有 Bug 而著称。\TeX\ 的版本号不断趋近于 $\pi$,当前为 3.141592653。 -\TeX\ 读作 ``Tech'' ,其中 ``ch'' 的发音类似于 ``h'' ,与汉字“泰赫”的发音类似。\TeX\ 的拼写来自希腊词语 +\TeX\ 读作 ``Tech'' ,其中 ``ch'' 的发音类似于 ``h'' ,与汉字“泰赫”的发音相近。\TeX\ 的拼写来自希腊词语 {\fontencoding{LGR}\selectfont teqnik'h} (technique,技术) 的开头几个字母。在 ASCII 字符环境,\TeX\ 写作 \texttt{TeX}。 \subsection{\LaTeX}\label{subsec:latex} @@ -29,7 +29,7 @@ \subsection{\LaTeX}\label{subsec:latex} \LaTeX\ 的最初开发者为 Leslie Lamport 博士\cite{manual}。\LaTeX\ 使用 \TeX\ 程序作为自己的排版引擎。 当前 \LaTeX\ 由 \LaTeX 3 工作组\footnote{\url{https://www.latex-project.org}}维护。 -\LaTeX\ 读作 ``Lah-tech'' 或者 ``Lay-tech'' ,近似于汉字“拉泰赫”或“雷泰赫”。\LaTeX\ 在 ASCII 字符环境写作 \texttt{LaTeX}。 +\LaTeX\ 读作 ``Lah-tech'' 或者 ``Lay-tech'' ,与汉字“拉泰赫”或“雷泰赫”的发音相近。\LaTeX\ 在 ASCII 字符环境写作 \texttt{LaTeX}。 当前的 \LaTeX\ 版本为 \LaTeXe ,意思是超出了第二版,接近但没达到第三版,在 ASCII 字符环境写作 \texttt{LaTeX2e}。 \subsection{\LaTeX\ 的优缺点}\label{subec:advs} @@ -87,16 +87,16 @@ \section{第一次使用 \LaTeX}\label{sec:run} \end{sourcecode} 假设将源代码 \ref{code:hello-world} 保存成 \texttt{helloworld.txt}。如果使用 \TeX works 或 \TeX studio 等编辑器, -点击编辑器提供的“编译”按钮即可。在此建议将编译命令设为 “\hologo{XeLaTeX}”。编译成功后生成文档 \texttt{helloworld.pdf}。 +点击编辑器提供的“编译”按钮即可。在此建议将编译命令设为 “XeLaTeX”。编译成功后生成文档 \texttt{helloworld.pdf}。 -另外也可以使用命令行的方式调用程序进行编译(笔者建议尝试一下,以了解背后的工作原理)。 -打开 Windows 命令提示符或者 Linux / macOS(OS X)的终端,输入命令: +另外也可以使用命令行的方式调用程序进行编译(笔者建议尝试命令行方式,以了解背后的工作原理)。 +打开 Windows 命令提示符或者 Linux / macOS(OS X)的终端,在源代码所在的目录下输入命令: \begin{verbatim} xelatex helloworld \end{verbatim} 此时命令行会闪过许多信息,如果编译成功,可以看到会生成 \texttt{helloworld.pdf} 以及一些其它文件。 -\subsection{引擎、格式和命令}\label{subsec:concepts} +\subsection{引擎、格式和编译命令}\label{subsec:concepts} \pinyinindex{paibanyinqing}{排版引擎} \index{pdfTeX@\hologo{pdfTeX}} @@ -106,45 +106,51 @@ \subsection{引擎、格式和命令}\label{subsec:concepts} \item[引擎] 全称为排版引擎,是编译源代码并生成文档的程序,如 \hologo{pdfTeX}、\hologo{XeTeX} 等。有时也称为编译器。 \item[格式] 是定义了一组命令的代码集。\LaTeX\ 就是最广泛应用的一个格式,高德纳本人还编写了一个简单的 plain \TeX\ 格式, 没有定义诸如 \cmd{document\-class} 和 \cmd{section} 等等命令。 - \item[命令] 是实际调用的、结合了引擎和格式的排版命令。如之前用过的 \texttt{xelatex} 命令是结合 \hologo{XeTeX} - 引擎和 \LaTeX\ 格式的一个命令。 + \item[编译命令] 是实际调用的、结合了引擎和格式的命令。如 \texttt{xelatex} 命令是结合 \hologo{XeTeX} + 引擎和 \LaTeX\ 格式的一个编译命令。 \end{description} -常见的引擎、格式和命令的关系总结于表 \ref{tbl:engine-format-command}。 +常见的引擎、格式和编译命令的关系总结于表 \ref{tbl:engine-format-command}。 \begin{table}[htp] \centering - \caption{\TeX\ 引擎、格式和命令。} + \caption{\TeX\ 引擎、格式和编译命令。} \label{tbl:engine-format-command} - \begin{tabular}{ccc} + \begin{tabular}{cccc} \hline - & \textbf{plain \TeX\ 格式} & \textbf{\LaTeX\ 格式} \\ + & \textbf{文档格式} & \textbf{plain \TeX\ 格式} & \textbf{\LaTeX\ 格式} \\ \hline - \TeX\ 引擎 & \texttt{tex} & N/A \\ - \hologo{pdfTeX} 引擎 & \texttt{etex} & \texttt{latex} \\ - & \texttt{pdftex} & \texttt{pdflatex} \\ - \hologo{XeTeX} 引擎 & \texttt{xetex} & \texttt{xelatex} \\ + \TeX\ 引擎 & DVI & \texttt{tex} & N/A \\ + \hologo{pdfTeX} 引擎 & DVI & \texttt{etex} & \texttt{latex} \\ + & PDF & \texttt{pdftex} & \texttt{pdflatex} \\ + \hologo{XeTeX} 引擎 & PDF & \texttt{xetex} & \texttt{xelatex} \\ + \hologo{LuaTeX} 引擎 & PDF & \texttt{luatex} & \texttt{lualatex} \\ \hline \end{tabular} \end{table} -\texttt{latex} 命令和 \LaTeX\ 格式往往容易混淆,在讨论关于 \LaTeX\ 的时候需要明确。 -为避免混淆,本手册中的 \LaTeX\ 一律指的是\textbf{格式},\textbf{命令}则用等宽字体 \texttt{latex} 表示。 +\texttt{latex} 编译命令和 \LaTeX\ 格式往往容易混淆,在讨论关于 \LaTeX\ 的时候需要明确。 +为避免混淆,本手册中的 \LaTeX\ 一律指的是\textbf{格式},\textbf{编译命令}则用等宽字体 \texttt{latex} 表示。 在此介绍一下几个编译命令的基本特点: \begin{description} \item[\texttt{latex}] - 虽然名为 \texttt{latex} 命令,底层调用的引擎其实是 \hologo{pdfTeX},不过生成的文档格式不是 \texttt{pdf} - 而是 \texttt{dvi}(Device Independent)格式,用 \texttt{dvipdfmx} 命令可以将其转为 \texttt{pdf}。 + 虽然名为 \texttt{latex} 命令,底层调用的引擎其实是 \hologo{pdfTeX}。 + 该命令生成 \texttt{dvi}(Device Independent)格式的文档, + 用 \texttt{dvipdfmx} 命令可以将其转为 \texttt{pdf}。 \item[\texttt{pdflatex}] 底层调用的引擎也是 \hologo{pdfTeX},可以直接生成 \texttt{pdf} 格式的文档。 \item[\texttt{xelatex}] 底层调用的引擎是 \hologo{XeTeX},支持 UTF-8 编码和 TrueType / OpenType 字体。 - 当下排版中文的较为方便的解决方案就基于 \texttt{xelatex},详见 \ref{sec:chinese} 节。 + 当前较为方便的中文排版解决方案基于 \texttt{xelatex},详见 \ref{sec:chinese} 节。 + \item[\texttt{lualatex}] + 底层调用的引擎是 \hologo{LuaTeX},这个引擎在 \hologo{pdfTeX} 引擎基础上发展而来, + 除了支持 UTF-8 编码和 TrueType / OpenType 字体外,还支持通过 Lua 语言扩展 \TeX\ 的功能。 + \texttt{lualatex} 编译命令下的中文排版支持需要借助 \pkg{luatex-ja} 宏包。 \end{description} \section{\LaTeX\ 命令和代码结构}\label{sec:src} -\LaTeX\ 的源代码本质上是文本文件。这些文本除了文字本身,还包括各种命令, +\LaTeX\ 的源代码为文本文件。这些文本除了文字本身,还包括各种命令, 用在排版公式、划分文档结构、控制样式等等不同的地方。 \subsection{\LaTeX\ 命令和环境}\label{subsec:cmds} @@ -177,7 +183,7 @@ \subsection{\LaTeX\ 命令和环境}\label{subsec:cmds} \index{LaTeX environment@\LaTeX\ 环境} \cmdindex{begin,end} -\LaTeX\ 还引入了\textbf{环境}的用法,用以令一些效果在局部生效,或是生成特定的文档元素。 +\LaTeX\ 还引入了\textbf{环境}的用法,用以令一些效果在局部生效,或是生成特殊的文档元素。 \LaTeX\ 环境的用法为一对命令 \cmd{begin} 和 \cmd{end}: \begin{command} \cmd{begin}\marg{environment name}\marg{arguments} \\ @@ -186,10 +192,10 @@ \subsection{\LaTeX\ 命令和环境}\label{subsec:cmds} \end{command} 其中 \Arg{environment name} 为环境名,\cmd{begin} 和 \cmd{end} 中填写的环境名应当一致。 -\Arg{arguments} 为环境所需的参数,可能包括参数。环境允许嵌套使用。 +\Arg{arguments} 为环境所需的参数,可能包括可选参数。环境允许嵌套使用。 \pinyinindex{fenzu}{分组} -除了 \LaTeX\ 环境之外,花括号本身也起到\textbf{分组}的作用,起到类似环境的令效果在局部生效的作用, +除了 \LaTeX\ 环境之外,花括号本身也起到\textbf{分组}的作用,使命令的效果限制在分组内。 例如 \ref{subsec:fontshape} 和 \ref{subsec:fontsize} 小节中介绍的修改字体和字号的命令用法。 \subsection{\LaTeX\ 源代码结构}\label{subsec:struct} @@ -203,16 +209,17 @@ \subsection{\LaTeX\ 源代码结构}\label{subsec:struct} \cmdindex{usepackage} \pinyinindex{hongbao}{宏包} -紧接着我们可以用 \cmd{usepackage} 命令调用\textbf{宏包}: +之后用 \cmd{usepackage} 命令调用\textbf{宏包}: \begin{verbatim} \usepackage{...} \end{verbatim} \envindex{document} -再接着,我们需要用 \env{document} 环境来标记正文内容范围: +再接着,用 \env{document} 环境来标记正文内容范围: \begin{verbatim} \begin{document} -% 正文内容。 +\section{...} +正文内容…… \end{document} \end{verbatim} @@ -252,23 +259,19 @@ \subsection{文档类}\label{subsec:classes} \cls{proc} & 基于 \cls{article} 文档类的一个简单的学术文档模板。\\ \cls{slides} & 幻灯格式的文档类,使用无衬线字体。\\ \cls{minimal} & 一个极其精简的文档类,只设定了纸张大小和基本字号, - 用作代码测试的最小工作示例(Minimal Working Example)。 \\ + 用作代码测试的最小工作示例(Minimal Working Example)。 \\ \hline \end{tabular} \end{table} \pinyinindex{xuanxiang}{选项(宏包/文档类)} -可选参数 \Arg{options} 为文档类指定选项,以全局地影响文档布局的参数,如字号、纸张大小、单双面等等。 +可选参数 \Arg{options} 为文档类指定选项,以全局地规定一些排版的参数,如字号、纸张大小、单双面等等。 比如调用 \cls{article} 文档类排版文章,指定纸张为 A4 大小,基本字号为 11pt,双面排版: \begin{verbatim} \documentclass[11pt,twoside,a4paper]{article} \end{verbatim} -\LaTeX\ 的三个标准文档类可指定的选项见表 \ref{tbl:ltx-options}。 - -\begin{table}[htp] -\caption{\LaTeX\ 的三个标准文档类可指定的选项。}\label{tbl:ltx-options} -\hrule +\LaTeX\ 的三个标准文档类可指定的选项包括: \begin{description} \item[\texttt{10pt, 11pt, 12pt}] \quad 指定文档的基本字号。缺省为 \texttt{10pt}。 @@ -288,15 +291,13 @@ \subsection{文档类}\label{subsec:classes} \item[\texttt{titlepage, notitlepage}] 指定标题命令 \cmd{maketitle} 是否生成单独的标题页。 \cls{article} 缺省为 \texttt{notitlepage},\cls{report} 和 \cls{book} 缺省为 \texttt{titlepage}。 -\item[\texttt{fleqn}] \quad 令行间公式左对齐(缺省为居中)。 +\item[\texttt{fleqn}] \quad 令行间公式左对齐。缺省为居中对齐。 -\item[\texttt{leqno}] \quad 将公式编号放在左边(缺省为右边)。 +\item[\texttt{leqno}] \quad 将公式编号放在左边。缺省为右边。 \item[\texttt{draft, final}] \quad 指定草稿/终稿模式。 草稿模式下,断行不良的地方会在行尾添加一个黑色方块。缺省为 \texttt{final}。 \end{description} -\hrule -\end{table} \subsection{宏包}\label{subsec:packages} @@ -331,7 +332,7 @@ \subsection{宏包}\label{subsec:packages} \section{\LaTeX\ 用到的文件一览}\label{sec:latex-files} -除了我们需要编写的源代码 \texttt{.tex} 文件,我们还可能接触到形形色色的文件。 +除了源代码文件 \texttt{.tex} 以外,我们在使用 \LaTeX\ 时还可能接触到各种格式的文件。 本节简单介绍一下在使用 \LaTeX\ 时能够经常见到的文件。 每个宏包和文档类都是带特定扩展名的文件,除此之外也有一些文件出现于 \LaTeX\ 模板中: @@ -361,7 +362,7 @@ \section{\LaTeX\ 用到的文件一览}\label{sec:latex-files} \section{文件的组织方式}\label{sec:latex-multi-files} -当编写较大规模的 \LaTeX\ 源代码,如书籍、毕业论文等,你有理由将源代码分成若干个文件而不是写到一堆,比如很自然地每章写一个文件, +当编写较大规模的 \LaTeX\ 源代码,如书籍、毕业论文等,有理由将源代码分成若干个文件,比如每章内容为一个文件, 可参考源代码 \ref{code:book-struct} 的写法。 \cmdindex{include} @@ -400,6 +401,6 @@ \section{文件的组织方式}\label{sec:latex-multi-files} \syntaxonly \end{verbatim} -如果想生成文档,则将 \cmd{syntaxonly} 命令那一行用 \texttt\% 注释掉即可。 +如果想生成文档,则用 \texttt\% 注释掉 \cmd{syntaxonly} 命令即可。 \endinput \ No newline at end of file diff --git a/src/chap/chap.02.text.tex b/src/chap/chap.02.text.tex index 84abc03..69fc342 100644 --- a/src/chap/chap.02.text.tex +++ b/src/chap/chap.02.text.tex @@ -5,8 +5,8 @@ \chapter{用 \LaTeX\ 排版文字}\label{chap:text} 文字是排版的基础。在介绍 \LaTeX\ 支持的各种文档元素之前,首先应当了解一下如何在 \LaTeX\ 源代码中输入并排版文字, 尤其是(西文中的)标点符号、连字符、重音等一些细节。 -本文的开头首先介绍了中文的支持方式。随着 \LaTeX\ 和底层 \TeX\ 引擎的发展,旧方式(CCT、CJK 宏包等)日渐退出舞台, -xelatex 编译命令配合 \cls{xeCJK} 宏包的方式成为主流。 +本文的开头首先介绍了中文的支持方式。随着 \LaTeX\ 和底层 \TeX\ 引擎的发展,旧方式(CCT、CJK 等)日渐退出舞台, +xelatex 编译命令配合 \cls{xeCJK} 或 \cls{ctex} 宏包的方式成为主流。 \end{intro} \section{语言文字和编码}\label{sec:encoding} @@ -30,20 +30,18 @@ \subsection{扩展编码}\label{subsec:ext-encoding} \index{bianma@编码!Latin-1} \pkgindex{inputenc} -现在的 \TeX\ 程序支持 8-bit,能够识别源代码里编码处于 0x80-0xFF 范围的字符。 +\TeX\ 从 3.0 版开始支持 8-bit,能够处理源代码里编码处于 0x80-0xFF 范围的字符。 西欧(拉丁字母)、俄语系(西里尔字母)等语言的编码方案刚好能够利用 0x80-0xFF 这个范围,处理起来较为方便。 \texttt{latex} 命令及 \texttt{pdflatex} 命令下,这些编码的处理由 \pkg{inputenc} 宏包支持。 比如将源代码保存为 Latin-1 编码,并在导言区调用宏包: \begin{verbatim} \usepackage[latin1]{inputenc} \end{verbatim} - 接下来,M\"obius 就直接可以通过(用适当输入法)输入 \texttt{M\"obius} 得到了。 \index{bianma@编码!GBK} GBK 等编码是多字节编码,ASCII 字符为一个字节,汉字等非 ASCII 字符为两个字节,这就需要借助一些宏包进行较为复杂的判断和处理。 \pkg{CJK} 宏包就是用于处理中、日、韩等多字节编码的语言文字的宏包。但 \pkg{CJK} 宏包的使用非常不方便,笔者不再推荐直接使用。 -后一节将简单介绍现在推荐的中文支持方案。 \subsection{UTF-8 编码}\label{subsec:utf8} @@ -52,12 +50,12 @@ \subsection{UTF-8 编码}\label{subsec:utf8} 一个字符可以由一个到四个字节编码,其中单字节字符兼容 ASCII 编码。 \pkgindex{inputenc} -\texttt{latex} 命令及 \texttt{pdflatex} 命令下可以使用 \pkg{inputenc} 宏包支持 UTF-8: +\texttt{latex} 命令及 \texttt{pdflatex} 命令下可以使用 \pkg{inputenc} 宏包支持 UTF-8 编码: \begin{verbatim} \usepackage[utf8]{inputenc} \end{verbatim} -\texttt{xelatex} 命令原生支持 UTF-8 编码,而且也\textbf{不适用 \pkg{inputenc} 宏包}。将 \texttt{.tex} 源代码保存为 UTF-8 编码, +\texttt{xelatex} 和 \texttt{lualatex} 命令原生支持 UTF-8 编码,而且也\textbf{不适用 \pkg{inputenc} 宏包}。将 \texttt{.tex} 源代码保存为 UTF-8 编码, 并借助 \pkg{fontspec} 宏包(见 \ref{subsec:fontspec} 小节)调用适当的字体,就可以在源代码中输入任意语言的文字。 但各个语言(印地语、阿拉伯语等)的特殊排版要求需要更多的宏包支持,如 \pkg{babel}、 \pkg{polyglossia} 等。 @@ -101,8 +99,7 @@ \subsection{\pkg{ctex} 宏包和文档类}\label{subsec:ctex} \end{document} \end{verbatim} -\pkg{ctex} 宏包/文档类支持源代码保存为 UTF-8 和 GBK 编码\footnote{使用 GBK 编码时,要为文档类指定 GBK 选项。详见 \pkg{ctex} 宏包手册。}, -用 \texttt{latex} + \texttt{dvipdfmx} 命令、\texttt{pdflatex} 或 \texttt{xelatex} 命令(只支持 UTF-8 编码)都能够编译。 +虽然 \pkg{ctex} 宏包和文档类保留了对 GBK 编码以及 \texttt{latex} + \texttt{dvipdfmx}、\texttt{pdflatex} 等旧的编译命令的支持, 笔者建议在使用 \pkg{ctex} 宏包和文档类时总是将源代码保存为 UTF-8 编码,用 \texttt{xelatex} 命令编译。 \section{\LaTeX\ 中的字符}\label{sec:text-symbols} @@ -114,7 +111,7 @@ \subsection{空格和分段}\label{subsec:spaces} \cmdindex{par} 行末的回车视为一个空格;但连续两个回车,也就是空行,会将文字分段。多个空行被视为一个空行。 -也可以在行末使用 \cmd{par} 命令分段: +也可以在行末使用 \cmd{par} 命令分段。 \begin{example} Several spaces equal one. Front spaces are ignored. @@ -127,9 +124,9 @@ \subsection{空格和分段}\label{subsec:spaces} \subsection{注释}\label{subsec:comments} -\index{%@\texttt\% (\textit{注释})} +\index{^^e@\texttt\% (\textit{注释})} \LaTeX\ 用 \texttt\% 字符作为注释。在这个字符之后直到行末,所有的字符都被忽略, -行末的回车也不引入空格。见如下示例: +行末的回车也不引入空格。 \begin{example} This is an % short comment % --- @@ -151,8 +148,7 @@ \subsection{特殊字符}\label{subsec:special-chars} 如果想要输入以上符号,需要使用以下带反斜线的形式输入: \begin{example} \# \$ \% \& \{ \} \_ -\^{} \~{} -\textbackslash +\^{} \~{} \textbackslash \end{example} 事实上这些带反斜线的形式就是 \LaTeX\ 命令。\cmd{\textasciicircum} 和 \cmd{\textasciitilde} @@ -210,7 +206,7 @@ \subsubsection{省略号} \subsubsection{波浪号} 我们在 \ref{subsec:special-chars} 小节中了解了 \cmd{\textasciitilde} 命令,它可以用来输入波浪号, -但位置靠顶端,可能不甚理想(位于顶端的原因是波浪号主要用作重音,参考下一小节)。有的人可能喜欢用数学公式里的 \cmd{sim} 符号来代替: +但位置靠顶端,可能不甚理想(\cmd{\textasciitilde} 命令主要用作重音,参考下一小节)。有的人可能喜欢用数学公式里的 \cmd{sim} 符号来代替: \begin{example} 1\~{}3 \qquad 1$\sim$2 \end{example} @@ -229,7 +225,7 @@ \subsection{特殊西文符号与重音}\label{subsec:accents} Stra\ss e \end{example} -更多可用的符号和重音见表 \ref{tbl:accents}。注意这些重音符号不可和与之相似的数学重音混用。 +更多可用的符号和重音见表 \ref{tbl:accents}。注意与 \ref{subsec:math-accents} 小节的数学重音区分开来。 \def\TSYM #1{#1 & \texttt{\string#1}} \def\TACC #1#2{#1{#2} & \texttt{\string#1#2}} % accents using a control character @@ -251,7 +247,7 @@ \subsection{特殊西文符号与重音}\label{subsec:accents} \hline \end{tabular} \begin{quote}\footnotesize% -前四行实际上都是命令带一个参数的写法,实际上 \cmd{\textasciicircum}\texttt{o} 也可以写作 +前四行实际上都是带一个参数的命令。\cmd{\textasciicircum}\texttt{o} 也可以写作 \cmd{\textasciicircum}\marg*{o},以此类推。 \end{quote} \end{table} @@ -290,7 +286,7 @@ \subsection{\LaTeX\ 标志}\label{subsec:latex-mark} \section{文字强调}\label{sec:emph} -强调文字的方法,要么是添加一些下划线或者装饰物,要么是改变文字的字体。 +强调文字的方法,要么是添加下划线等装饰物,要么是改变文字的字体。 \cmdindex{underline} \LaTeX\ 定义了 \cmd{underline} 命令用来为文字添加下划线: diff --git a/src/chap/chap.03.elements.tex b/src/chap/chap.03.elements.tex index c5cedcc..ba3347f 100644 --- a/src/chap/chap.03.elements.tex +++ b/src/chap/chap.03.elements.tex @@ -609,6 +609,15 @@ \subsection{列格式}\label{subsec:tabular-cols} \pkg{array} 宏包还提供了类似 \texttt{p} 格式的 \texttt{m} 格式和 \texttt{b} 格式, 三者分别在垂直方向上靠顶端对齐、居中以及底端对齐。 +\begin{example} +\newcommand\txt + {a b c d e f g h i} +\begin{tabular}{cp{2em}m{2em}b{2em}} + \hline + pos & \txt & \txt & \txt \\ + \hline +\end{tabular} +\end{example} \subsection{列宽}\label{subsec:colwidth} diff --git a/src/chap/chap.04.math.tex b/src/chap/chap.04.math.tex index 53d615f..85f80d3 100644 --- a/src/chap/chap.04.math.tex +++ b/src/chap/chap.04.math.tex @@ -62,7 +62,7 @@ \subsection{行内和行间公式}\label{subsec:math-inline-display} \cmdindex{[,]} \envindex{displaymath} \envindex[amsmath]{equation*} -当然你不会愿意为每个公式都手动取消编号。\LaTeX\ 提供了一对命令 \cmd{[} 和 \cmd{]} 用于生成不带编号的行间公式% +如果需要直接使用不带编号的行间公式,则将公式用命令 \cmd{[} 和 \cmd{]} 包裹% \footnote{\TeX\ 原生排版行间公式的方法是用一对 \texttt{\$\$} 符号包裹,不过无法通过指定 \texttt{fleqn} 选项控制左对齐, 与上下文之间的间距也不好调整,故不太推荐使用。}, 与之等效的是 \env{displaymath} 环境。有的人更喜欢 \amsenv{equation*} 环境,体现了带星号和不带星号的环境之间的区别。 @@ -102,12 +102,12 @@ \subsection{数学模式}\label{subsec:math-mode} \pinyinindex{shuxuemoshi}{数学模式} \cmdindex[amsmath]{text} -当你使用 \texttt\$ 开启行内公式输入,或是使用 \cmd{[} 命令、\env{equation} 环境时,你就进入了所谓的\textbf{数学模式}。 +当你使用 \texttt\$ 开启行内公式输入,或是使用 \cmd{[} 命令、\env{equation} 环境时,\LaTeX\ 就进入了\textbf{数学模式}。 数学模式相比于文本模式有以下特点: \begin{enumerate} \item 数学模式中输入的空格被忽略。数学符号的间距默认由符号的性质(关系符号、运算符等)决定。 需要人为引入间距时,使用 \cmd{quad} 和 \cmd{qquad} 等命令。详见 \ref{sec:math-space} 节。 - \item \textbf{不允许有空行(分段)},公式也无法手动用 \crcmd\ 换行。排版多行公式需要用到 \ref{sec:multi-eqns} 节介绍的各种环境。 + \item \textbf{不允许有空行(分段)}。行间公式中也无法用 \crcmd\ 命令手动换行。排版多行公式需要用到 \ref{sec:multi-eqns} 节介绍的各种环境。 \item 所有的字母被当作数学公式中的变量处理,字母间距与文本模式不一致,也无法生成单词之间的空格。 如果想在数学公式中输入正体的文本,简单情况下可用 \ref{subsec:math-alpha} 小节中提供的 \cmd{mathrm} 命令。 或者用 \pkg{amsmath} 提供的 \amscmd{text} 命令% @@ -173,15 +173,13 @@ \subsection{分式和根式}\label{subsec:frac-sqrt} \mathindex{frac} \cmdindex[amsmath]{dfrac,tfrac} 分式使用 \cmd{frac}\marg*{分子}\marg*{分母} 来书写。分式的大小在行间公式中是正常大小,而在行内被极度压缩。 -\pkg{amsmath} 提供了方便的命令 \amscmd{dfrac} 和 \amscmd{tfrac},令用户能够在行内使用正常大小的行间公式,或是反过来。 +\pkg{amsmath} 提供了方便的命令 \amscmd{dfrac} 和 \amscmd{tfrac},令用户能够在行内使用正常大小的分式,或是反过来。 \begin{example} In display style: \[ 3/8 \qquad \frac{3}{8} \qquad \tfrac{3}{8} \] -\end{example} -\begin{example} In text style: $1\frac{1}{2}$~hours \qquad $1\dfrac{1}{2}$~hours @@ -301,8 +299,8 @@ \subsection{巨算符}\label{subsec:math-bigop} \end{example} \mathindex{limits,nolimits} -巨算符的上下标用作其上下限。行间公式中,积分号默认将上下限放在右上角和右下角,求和号默认在上下方;行内公式一律默认在右上角和右下角。 -可以在巨算符后使用 \cmd{limits} 手动令上下限显示在上下方,\cmd{nolimits} 则相反。 +巨算符的上下标位置可由 \cmd{limits} 和 \cmd{nolimits} 控制,前者令巨算符类似 $\lim$ 或求和算符 $\sum$,上下标位于上下方; +后者令巨算符类似积分号,上下标位于右上方和右下方。 \begin{example} In text: $\sum\limits_{i=1}^n \quad @@ -336,8 +334,8 @@ \subsection{巨算符}\label{subsec:math-bigop} \subsection{数学重音和上下括号}\label{subsec:math-accents} \maccindex{dot,ddot,vec,hat} -数学符号可以像文字一样加重音,比如对时间求导的符号 $\dot{r}$ (\cmd{dot}\marg*{r})、 $\ddot{r}$ (\cmd{ddot}\marg*{r}) -、表示向量的箭头 $\vec{r}$ (\cmd{vec}\marg*{r}) 、表示欧式空间单位向量的 $\hat{\mathbf{e}}$ (\cmd{hat}\marg*{\cmd{mathbf}\marg*{e}}) 等, +数学符号可以像文字一样加重音,比如求导符号 $\dot{r}$ (\cmd{dot}\marg*{r})、 $\ddot{r}$ (\cmd{ddot}\marg*{r})、 +表示向量的箭头 $\vec{r}$ (\cmd{vec}\marg*{r}) 、表示单位向量的符号 $\hat{\mathbf{e}}$ (\cmd{hat}\marg*{\cmd{mathbf}\marg*{e}}) 等, 详见表 \ref{tbl:math-accents}。使用时要注意重音符号的作用区域,一般应当对某个符号而不是“符号加下标”使用重音: \begin{example} $\bar{x_0} \quad \bar{x}_0$\\[5pt] @@ -368,8 +366,12 @@ \subsection{数学重音和上下括号}\label{subsec:math-accents} \subsection{箭头}\label{subsec:math-arrows} +\msymindex{to,rightarrow,leftarrow,uparrow,downarrow} +常用的箭头包括 \cmd{rightarrow} ($\rightarrow$,或 \cmd{to})、\cmd{leftarrow}($\leftarrow$,或 \cmd{gets})等。 +更多箭头详见表 \ref{tbl:math-arrows}。 + \cmdindex[amsmath]{xleftarrow,xrightarrow} -除了作为上下标之外,箭头还用于表示过程。\pkg{amsmath} 的 \amscmd{xleft\-arrow} 和 \amscmd{xright\-arrow} 命令可以为箭头增加上下标: +\pkg{amsmath} 的 \amscmd{xleft\-arrow} 和 \amscmd{xright\-arrow} 命令提供了长度可以伸展的箭头,并且可以为箭头增加上下标: \begin{example} \[ a\xleftarrow{x+y+z} b \] \[ c\xrightarrow[x 得到的是\ !` 和\ ?` 两个倒立的标点符号, +这些符号所在的位置被其它符号所占据(在默认的 OT1 字体编码下 \texttt< 和 \texttt> 排版\ !` 和\ ?` 两个倒立的标点符号, 正常的大于号和小于号可用命令 \cmd{textgreater} 和 \cmd{textless} 输入;等宽字体(\cmd{ttfamily})里是正常的大于号和小于号)。 -扩展的 \texttt{T1} 编码则对 ASCII 字符的兼容好得多,不会出现上述的大于号、小于号的问题。 -\texttt{T1} 编码配合一些字体宏包如 \pkg{txfonts}、\pkg{lmodern} 等,还能够令用户使用 \cmd{textasciitilde} 命令 +扩展的 \texttt{T1} 字体编码则更加靠近 ASCII 文本编码,不会出现上述的大于号、小于号的问题。 +\texttt{T1} 字体编码配合一些字体宏包如 \pkg{txfonts}、\pkg{lmodern} 等,还能够令用户使用 \cmd{textasciitilde} 命令 输入位置居中的波浪号,比如表示近似的用法 \textasciitilde 24,相比数学符号 \texttt\$\cmd{sim}\texttt\$ 来得合理一些。 \pkgindex{fontenc} 切换字体编码要用到 \pkg{fontenc} 宏包: -\begin{verbatim} -\usepackage[T1]{fontenc} -\end{verbatim} +\begin{command} +\cmd{usepackage}\oarg*{T1}\marg*{fontenc} +\end{command} -\pkg{fontenc} 宏包是用来配合传统的 \LaTeX\ 字体的,如表 \ref{tbl:font-pkgs} 中的一些传统宏包。如果使用下文的 \pkg{fontspec} -宏包调用 \texttt{ttf} 或 \texttt{otf} 格式字体,就不要再使用 \pkg{fontenc} 宏包。 +\pkg{fontenc} 宏包是用来配合传统的 \LaTeX\ 字体的,如表 \ref{tbl:font-pkgs} 中的一些传统字体宏包。如果使用 \texttt{xelatex} 编译方式, +并使用 \pkg{fontspec} 宏包调用 \texttt{ttf} 或 \texttt{otf} 格式字体,就不要再使用 \pkg{fontenc} 宏包。 使用表 \ref{tbl:font-pkgs} 中的字体宏包之前最好查看一下宏包的帮助文档,了解使用方法和注意事项。 \begin{table}[!p] -\centering +\centering\small \caption{常见的 \LaTeX\ 字体宏包。}\label{tbl:font-pkgs} \begin{tabular}{lp{30em}} \hline @@ -177,11 +173,12 @@ \subsection{字体编码}\label{subsec:font-encs} \pkg{fourier} & fourier 风格数学字体,配合 Utopia 正文字体 \\ \pkg{fouriernc} & fourier 风格数学字体,配合 New Century Schoolbook 正文字体 \\ \pkg{arev} & Arev 无衬线字体宏包,Vera Sans 风格 \\ - \pkg{mathdesign} & 配合 Charter / Garamond / Utopia 正文字体的数学字体宏包(Garamond 字体可能需要单独安装) \\ + \pkg{mathdesign} & 配合 Charter / Garamond / Utopia 正文字体的数学字体宏包 \\ \hline \multicolumn{2}{c}{\textbf{文本字体宏包}} \\ \multicolumn{2}{l}{\footnotesize 以下字体包括传统的 \LaTeX\ 字体格式以及 TrueType / OpenType 格式。} \\ \hline + \pkg{cm-unicode} & Computer Modern 风格的 Unicode 字体,支持多种西方语言 \\ \pkg{dejavu} & DejaVu 开源字体 \\ \pkg{droid} & Droid 开源字体 \\ \pkg{inconsolata} & Inconsolata 开源等宽字体 \\ @@ -291,13 +288,13 @@ \subsection{行距}\label{subsec:linespread} \pinyinindex{hangju}{行距} \cmdindex{linespread} 前文中我们提到过 \cmd{fontsize} 命令可以为字号设定对应的行距,但我们很少那么用。 -更常用的办法是在导言区使用 \cmd{linespread} 命令, +更常用的办法是在导言区使用 \cmd{linespread} 命令。 \begin{command} \cmd{linespread}\marg{factor} \end{command} -这里的 \Arg{factor} 是在基础行距上而不是字号上乘以一个因子。大部分时候,默认的基础行距是 1.2 倍字号大小(参考 \cmd{fontsize} 命令), -因此设置 1.5 倍行距的命令 \cmd{line\-spread}\marg*{1.5} 意味着最终行距为 1.8 倍的字号大小。 +其中 \Arg{factor} 作用于基础行距而不是字号。缺省的基础行距是 1.2 倍字号大小(参考 \cmd{font\-size} 命令), +因此使用 \cmd{line\-spread}\marg*{1.5} 意味着最终行距为 1.8 倍的字号大小。 \cmdindex{selectfont} 如果不是在导言区全局修改,而想要局部地改变某个段落的行距,需要用 \cmd{select\-font} 命令使 \cmd{line\-spread} 命令的改动立即生效: @@ -315,7 +312,7 @@ \subsection{行距}\label{subsec:linespread} \cmdindex{par} 字号的改变是即时生效的,而行距的改变直到文字\textbf{分段}时才生效。 -如果你想改变某一部分文字的行距,那么不能简单地将文字包含在花括号内。注意下面两个例子中 \cmd{par} 命令的位置,包括上一个例子的写法 +如果需要改变某一部分文字的行距,那么不能简单地将文字包含在花括号内。注意下面两个例子中 \cmd{par} 命令的位置,包括上一个例子的写法 (\cmd{par} 相当于分段,见 \ref{subsec:spaces} 小节): \begin{example} {\Large Don't read this! @@ -362,10 +359,7 @@ \subsection{段落格式}\label{subsec:par-shape} \subsection{水平间距}\label{subsec:hspace} \cmdindex{hspace} -\LaTeX 默认为将单词之间的“空格”转化为水平间距。如果需要在文中手动插入额外的水平间距,可使用如下命令: -\begin{command} -\cmd{hspace}\marg{length} -\end{command} +\LaTeX 默认为将单词之间的“空格”转化为水平间距。如果需要在文中手动插入额外的水平间距,可使用 \cmd{hspace} 命令: \begin{example} This\hspace{1.5cm}is a space of 1.5 cm. @@ -439,14 +433,14 @@ \subsection{垂直间距}\label{subsec:vspace} \section{页面和分栏}\label{sec:page-columns} -我们不妨回顾一下第一章介绍的文档类属性。\LaTeX\ 允许你通过为文档类指定选项来控制纸张的大小(见表 \ref{tbl:ltx-options}), +我们不妨回顾一下第一章介绍的文档类属性。\LaTeX\ 允许用户通过为文档类指定选项来控制纸张的大小(见 \ref{subsec:classes} 小节), 包括 \texttt{a4paper}、\texttt{letterpaper}等等,并配合字号设置了适合的页边距。 \cmdindex{textheight,textwidth} 控制页边距的参数由图 \ref{fig:layouts} 里给出的各种长度变量控制。 可以用 \cmd{setlength} 命令修改这些长度变量,以达到调节页面尺寸和边距的作用; 反之也可以利用这些长度变量来决定排版内容的尺寸,如在 \env{tabularx} 环境或 \cmd{include\-graphics} 命令的参数里, -设置图片或表格的宽度为 0.8\cmd{textwidth}: +设置图片或表格的宽度为 0.8\cmd{textwidth}。 \begin{figure}[!p] \centering @@ -454,7 +448,7 @@ \section{页面和分栏}\label{sec:page-columns} \caption{本文档的页面参数示意图(奇数页;由 \pkg{layout} 宏包生成)。} \label{fig:layouts} \end{figure} -但是,如果你想要直接设置页边距等参数,着实是一件麻烦事。我们根据图 \ref{fig:layouts} 将各个方向的页边距计算公式给出(以奇数页为例): +页边距等比较直观的参数则必须间接设置。我们根据图 \ref{fig:layouts} 将各个方向的页边距计算公式给出(以奇数页为例): \begin{align*} \text{\Arg{left-margin}} &= \text{\ttfamily 1in} + \text{\cmd{hoffset}} @@ -471,9 +465,9 @@ \section{页面和分栏}\label{sec:page-columns} - \text{\Arg{top-margin}} - \text{\cmd{textheight}} \end{align*} -如果我们想设置合适的 \Arg{left-margin} 和 \Arg{right-margin},就要靠上述方程组把 \cmd{odd\-sidemargin} 和 \cmd{text\-width} 等参数解出来! +如果需要设置合适的 \Arg{left-margin} 和 \Arg{right-margin},就要通过上述方程组把 \cmd{odd\-sidemargin} 和 \cmd{text\-width} 等参数解出来! -幸好 \pkg{geometry} 宏包提供了设置页面参数的简便方法,能够帮我们完成背后繁杂的计算。 +幸好 \pkg{geometry} 宏包提供了设置页边距等参数的简便方法,能够帮我们完成背后繁杂的计算。 \subsection{利用 \pkg{geometry} 宏包设置页面参数}\label{subsec:geometry} @@ -488,6 +482,7 @@ \subsection{利用 \pkg{geometry} 宏包设置页面参数}\label{subsec:geometr \cmd{usepackage}\marg*{geometry} \\ \cmd{geometry}\marg{geometry-settings} \end{command} + 也可以将参数指定为宏包的选项: \begin{command} \cmd{usepackage}\oarg{geometry-settings}\marg*{geometry} @@ -521,14 +516,13 @@ \subsection{页面内容的垂直对齐}\label{subsec:raggedbottom} \LaTeX\ 默认将页面内容在垂直方向分散对齐。对于有大量图表的文档,许多时候想要做到排版匀称的页面很困难, 垂直分散对齐会造成某些页面的垂直间距过宽,还可能报大量的 \texttt{Underfull} \cmd{vbox} 消息。 -\cmdindex{raggedbottom} +\cmdindex{raggedbottom, flushbottom} \LaTeX\ 还提供了另一种策略:将页面内容向顶部对齐,给底部留出高度不一的空白。在导言区或者适合的位置使用 -以下命令开启顶部对齐的效果: +\cmd{raggedbottom} 开启顶部对齐的效果: \begin{command} \cmd{raggedbottom} \end{command} -\cmdindex{flushbottom} 相反地,\cmd{flushbottom} 命令用于设置成默认的分散对齐。 \subsection{分栏}\label{subsec:columns} @@ -579,7 +573,8 @@ \subsection{基本的页眉页脚样式}\label{subsec:basic-pagesyle} \begin{command} \cmd{pagestyle}\marg{page-style} \end{command} -另外一个命令只影响当页的页眉页脚样式: + +命令 \cmd{thispagestyle} 只影响当页的页眉页脚样式: \begin{command} \cmd{thispagestyle}\marg{page-style} \end{command} @@ -603,10 +598,10 @@ \subsection{基本的页眉页脚样式}\label{subsec:basic-pagesyle} \clsindex{article,report,book} 其中 \texttt{headings} 的情况较为复杂: \begin{description} - \item[\cls{article} 文档类,\texttt{twoside} 选项:] 偶数页为页码和节标题,奇数页为小节标题和页码; - \item[\cls{article} 文档类,\texttt{oneside} 选项:] 页眉为节标题和页码; - \item[\cls{book/report} 文档类,\texttt{twoside} 选项:] 偶数页为页码和章标题,奇数页为节标题和页码; - \item[\cls{book/report} 文档类,\texttt{oneside} 选项:] 页眉为章标题和页码。 + \item[\cls{article} 文档类,\texttt{twoside} 选项] 偶数页为页码和节标题,奇数页为小节标题和页码; + \item[\cls{article} 文档类,\texttt{oneside} 选项] 页眉为节标题和页码; + \item[\cls{book/report} 文档类,\texttt{twoside} 选项] 偶数页为页码和章标题,奇数页为节标题和页码; + \item[\cls{book/report} 文档类,\texttt{oneside} 选项] 页眉为章标题和页码。 \end{description} \subsection{手动更改页眉页脚的内容}\label{subsec:marks} @@ -620,8 +615,8 @@ \subsection{手动更改页眉页脚的内容}\label{subsec:marks} \end{command} 在双面排版、\texttt{headings / myheadings} 页眉页脚样式下,\Arg{left-mark} 和 \Arg{right-mark} 的内容分别预期出现在左页(偶数页)和右页(奇数页)。 +事实上 \cmd{chapter} 和 \cmd{section} 等章节命令内部也使用 \cmd{mark\-both} 或者 \cmd{mark\-right} 生成页眉。 -事实上 \cmd{chapter}、\cmd{section} 等命令内部也使用 \cmd{mark\-both} 或者 \cmd{mark\-right} 写页眉。 \LaTeX\ 默认将页眉的内容都转为大写字母。如果你不喜欢这样,可以尝试以下代码 (相关命令的用法参照 \ref{subsec:newcmd} 节)% \footnote{但是这不能改变页眉的斜体样式(\cmd{slshape}),斜体是定义在 \texttt{headings} 样式里的。 diff --git a/src/chap/chap.06.spec.tex b/src/chap/chap.06.spec.tex index 7376889..9913bb9 100644 --- a/src/chap/chap.06.spec.tex +++ b/src/chap/chap.06.spec.tex @@ -21,35 +21,33 @@ \subsection{基本的参考文献和引用}\label{subsec:bib-basics} \end{command} \Arg{citation} 为引用的参考文献的标签,类似 \cmd{ref} 里的参数;\cmd{cite} 带一个可选参数,为引用的编号后加上额外的内容, -如 \cmd{cite}\oarg*{page 22}\marg{pa} 可能得到形如 [13, page 22] 这样的引用。 +如 \cmd{cite}\oarg*{page 22}\marg*{Paper2013} 可能得到形如 [13, page 22] 这样的引用。 \envindex{thebibliography} \cmdindex{bibitem} 参考文献由 \env{thebibliography} 环境包裹。每条参考文献由 \cmd{bibitem} 开头,其后是参考文献本身的内容: \begin{command} -\cmd{bibitem}\oarg{item number}\marg{citation} +\cmd{begin}\marg*{thebibliography}\marg{widest label} \\ +\quad \cmd{bibitem}\oarg{item number}\marg{citation} ...\\ +\cmd{end}\marg*{thebibliography} \end{command} - 其中 \Arg{citation} 是 \cmd{cite} 使用的文献标签, \Arg{item number} 自定义参考文献的序号,如果省略,则按自然排序给定序号。 - -\env{thebibliography} 环境带一个参数,用以设定 \cmd{bibitem} 命令生成的参考文献编号的宽度, -如 99 意味着不超过两位数字。通常设定为与参考文献的数目一致。 +\Arg{widest label} 用以限制参考文献序号的宽度,如 99 意味着不超过两位数字。通常设定为与参考文献的数目一致。 \env{thebibliography} 环境自动生成不带编号的一节(\cls{article} 文档类)或一章(\cls{report} / \cls{book} 文档类)。 在 \cls{article} 文档类的节标题默认为 ``Reference''{},而在 \cls{report / book} 文档类 的章标题默认为 ``Bibliography''{}。用户可通过 \ref{sec:latex-settings} 节给出的方法定制参考文献的标题。 以下为一个使用 \env{the\-biblio\-graphy} 排版参考文献的例子: - \begin{verbatim} \documentclass{article} \begin{document} \section{Introduction} -Partl~\cite{pa} has proposed that \ldots +Partl~\cite{germenTeX} has proposed that \ldots \begin{thebibliography}{99} -\bibitem{pa} H.~Partl: \emph{German \TeX}, +\bibitem{germenTeX} H.~Partl: \emph{German \TeX}, TUGboat Volume~9, Issue~1 (1988) \end{thebibliography} \end{document} @@ -160,10 +158,10 @@ \subsection{使用 \hologo{BibTeX} 排版参考文献}\label{subsec:bibtex-use} \index{bibtex@\protect\hologo{BibTeX} 工具} 现在我们来看如何利用 \hologo{BibTeX} 数据库生成参考文献和引用。 -第一步:我们当然需要一份 \hologo{BibTeX} 数据库,假设数据库文件名为 \texttt{books.bib}, +第一步:准备一份 \hologo{BibTeX} 数据库,假设数据库文件名为 \texttt{books.bib}, 和 \LaTeX\ 源代码\textbf{一般位于同一个目录下}。 -第二步:在源代码中添加必要的命令。假设源代码名为 \texttt{demo.tex}(见 \ref{code:bibtex-demo})。 +第二步:在源代码中添加必要的命令。假设源代码名为 \texttt{demo.tex}(见源代码 \ref{code:bibtex-demo})。 \begin{enumerate} \item \cmdindex{bibliographystyle} 首先需要使用命令 \cmd{bibliographystyle} 设定参考文献的格式。 @@ -173,7 +171,7 @@ \subsection{使用 \hologo{BibTeX} 排版参考文献}\label{subsec:bibtex-use} 如果需要列出未被引用的文献,则需要 \cmd{nocite}\marg{citation} 命令;而 \cmd{nocite}\marg*{*} 则让所有未被引用的文献都列出。 \item \cmdindex{bibliography} -再次,在你需要列出参考文献的位置,使用 \cmd{biblio\-graphy} 命令代替 \env{the\-biblio\-graphy} 环境: +再次,在需要列出参考文献的位置,使用 \cmd{biblio\-graphy} 命令代替 \env{the\-biblio\-graphy} 环境: \begin{command} \cmd{bibliography}\marg{bib-name} \end{command} @@ -333,7 +331,7 @@ \subsection{索引项的写法}\label{subsec:index-entry} \section{使用颜色}\label{sec:color} \pinyinindex{yanse}{颜色} -\LaTeX\ 原生不支持颜色,它依赖 \pkg{color} 宏包或者 \pkg{xcolor} 宏包,给 PDF 输出生成颜色的特殊指令。 +原始的 \LaTeX\ 不支持使用各种颜色。\pkg{color} 宏包或者 \pkg{xcolor} 宏包提供了对颜色的支持,给 PDF 输出生成颜色的特殊指令。 \subsection{颜色的表达方式}\label{subsec:color-code} diff --git a/src/chap/chap.07.graphic.tex b/src/chap/chap.07.graphic.tex index 2876310..13a07dc 100644 --- a/src/chap/chap.07.graphic.tex +++ b/src/chap/chap.07.graphic.tex @@ -49,7 +49,7 @@ \section{\TikZ\ 绘图语言}\label{sec:tikz} \cmd{tikz}\oarg*{\ldots} \marg*{\Arg{tikz code 1}\texttt{;} \Arg{tikz code 2}\texttt{;} \ldots} \\[1ex] \cmd{begin}\marg*{tikzpicture}\oarg*{\ldots} \\ \Arg{tikz code 1}\texttt{;} \\ -\Arg{tikz code 2}\texttt{;}\ldots \\ +\Arg{tikz code 2}\texttt{;} \\ \ldots \\ \cmd{end}\marg*{tikzpicture} \end{command} @@ -95,8 +95,15 @@ \subsection{\TikZ\ 坐标和路径}\label{subsec:tikz-path} 连续使用连线时,可以使用 \texttt{cycle} 令路径回到起点,生成闭合的路径。 \begin{example} \begin{tikzpicture} -\draw (0,0) -- (1,1) - -- (2,0) -- cycle; +\draw (0,0) -- (1,1) -- (2,0) -- cycle; +\end{tikzpicture} +\end{example} + +多条路径可用于同一条画图命令中,以空格分隔: +\begin{example} +\begin{tikzpicture} +\draw (0,0) -- (0,1) + (1,0) -- (1,1) -- (2,0) -- cycle; \end{tikzpicture} \end{example} @@ -126,14 +133,14 @@ \subsection{\TikZ\ 坐标和路径}\label{subsec:tikz-path} \end{example} \begin{itemize} - \item 正弦、余弦曲线(四分之一个周期): + \item 正弦、余弦曲线(1/4 周期): \end{itemize} \begin{example} \begin{tikzpicture} -\draw (0,0) sin (1.57,1); -\draw (0,1) sin (1.57,0); -\draw (2,1) cos (3.57,0); -\draw (2,0) cos (3.57,1); +\draw (0,0) sin (1,1); +\draw (0,1) sin (1,0); +\draw (2,1) cos (3,0); +\draw (2,0) cos (3,1); \end{tikzpicture} \end{example} @@ -171,11 +178,11 @@ \subsection{\TikZ\ 坐标和路径}\label{subsec:tikz-path} \begin{example} \begin{tikzpicture} \draw[help lines,step=0.5] - (-2,-2) grid (2,2); -\draw[->] (-2.5,0) -- (2.5,0); -\draw[->] (0,-2.5) -- (0,2.5); -\draw[domain=-2:2] - plot(\x,{\x*\x -2}); + (-1,-1) grid (1,1); +\draw[->] (-1.5,0) -- (1.5,0); +\draw[->] (0,-1.5) -- (0,1.5); +\draw[domain=-1:1] + plot(\x,{\x*\x*2 -1}); \end{tikzpicture} \end{example} @@ -185,7 +192,7 @@ \subsection{\TikZ\ 绘图命令和参数}\label{subsec:tikz-draw} 除了 \cmd{draw} 命令之外,\TikZ\ 还提供了 \cmd{fill} 命令用来填充图形,\cmd{filldraw} 命令则同时填充和描边。 除了矩形、圆等现成的闭合图形外,\cmd{fill} 和 \cmd{filldraw} 命令也能够填充人为构造的闭合路径。 \begin{command} -\cmd{draw}\oarg*{\ldots} \Arg{path}; \quad +\cmd{draw}\oarg*{\ldots} \Arg{path}; \\ \cmd{fill}\oarg*{\ldots} \Arg{path}; \\ \cmd{filldraw}\oarg*{\ldots} \Arg{path}; \end{command} @@ -193,65 +200,122 @@ \subsection{\TikZ\ 绘图命令和参数}\label{subsec:tikz-draw} 绘图参数可作为可选参数用在 \env{tikzpiture} 环境或 \cmd{tikz} 命令时,参数会影响到所有具体的绘图命令; 用在单个绘图命令 \cmd{draw}、\cmd{filldraw} 等时,只对这个命令起效。 -\envindex[tikz]{scope} -\TikZ\ 还提供了 \env{scope} 环境,令一些绘图参数在局部起效: +\TikZ\ 有数不清的绘图参数,这些参数令 \TikZ\ 能够绘制丰富多彩的图像,同时也令 \TikZ\ 难以精通。 +以下示例常用的一些绘图参数。 + +\begin{itemize} + \item \texttt{color/draw/fill=\Arg{color}} 为 \cmd{draw} 或 \cmd{fill} 等命令指定颜色。 + \texttt{draw} 和 \texttt{fill} 分别指定填充和描边的颜色,而 \texttt{color} 同时指定, + 可以省略 \texttt{color=} 直接写颜色名称。 +\end{itemize} +\begin{example} +\begin{tikzpicture}[thick] +\draw[blue] (0,0) rectangle (1,1); +\filldraw[fill=yellow,draw=red] + (2,0.5) circle [radius=0.5]; +\end{tikzpicture} +\end{example} + +\begin{itemize} + \item \texttt{thick=\Arg{length}/thin/semithick/\ldots} 指定线条的粗细。 +\end{itemize} \begin{example} \begin{tikzpicture} -\draw (0,0) rectangle (2.5, 2.5); -\begin{scope}[fill=gray,scale=0.5] -\filldraw (0,0) rectangle (2.5, 2.5); -\end{scope} +\draw[ultra thin] (0,0)--(0,2); +\draw[very thin] (0.5,0)--(0.5,2); +\draw[thin] (1,0)--(1,2); +\draw[semithick] (1.5,0)--(1.5,2); +\draw[thick] (2,0)--(2,2); +\draw[very thick] (2.5,0)--(2.5,2); +\draw[ultra thick] (3,0)--(3,2); \end{tikzpicture} \end{example} -\TikZ\ 有数不清的绘图参数,这些参数令 \TikZ\ 能够绘制丰富多彩的图像,同时也令 \TikZ\ 难以精通。 -本手册仅总结常用的一些绘图参数,见表 \ref{tbl:tikz-options}。 - -\begin{table}[htp] -\caption{\TikZ\ 常用的一些绘图参数。}\label{tbl:tikz-options} -\small -\hrule \begin{itemize} - \item \texttt{color=\Arg{color}} \par - 为线条(\cmd{draw})或填充(\cmd{fill})指定颜色,\Arg{color} 使用颜色名或是 \pkg{xcolor} 的混合颜色语法。 - 往往可以不写 \texttt{color=} 直接写颜色名称。 - \item \texttt{fill=\Arg{color} / draw=\Arg{color}} \par - 分别给 \cmd{filldraw} 指定填充和描边的颜色。也可给 \cmd{fill} 和 \cmd{draw} 命令使用。 - 不带参数直接使用 \texttt{fill} 和 \texttt{draw},相当于用默认颜色。 + \item \texttt{solid/dashed/dotted/dash dot/dash dot dot} 指定线条类型(实线、虚线、点划线等)。 + 与 \texttt{dashed} 对应地有 \texttt{densely dashed} 和 \texttt{loosely dashed},后三种类型同理。 \end{itemize} -\hrule +\begin{example} +\begin{tikzpicture} +\draw[dashed] (0,0) -- (0,2); +\draw[dotted] (0.5,0) -- (0.5,2); +\draw[dash dot] (1,0) -- (1,2); +\draw[dash dot dot] (1.5,0) -- (1.5,2); +\draw[densely dotted] + (2,0) -- (3,2) -- (4,0) -- cycle; +\end{tikzpicture} +\end{example} + \begin{itemize} - \item \texttt{line width=\Arg{length}} \par - 指定线条粗细为 \Arg{width}。默认为普通线宽 0.4pt。 - \item \texttt{thin / semithick / thick / \ldots} \par - 指定线条粗细为预定义的某个类型,默认为 \texttt{thin}。总共有七种预定义的类型: - \texttt{ultra thin}(0.1pt),\texttt{very thin}(0.2pt),\texttt{thin}(0.4pt),\texttt{semithick}(0.6pt), - \texttt{thick}(0.8pt),\texttt{very thick}(1.2pt),\texttt{ultra thick}(1.6pt)。 - \item \texttt{help lines} \par - 指定线条为辅助线,相当于 \texttt{line width=0.2pt,gray}。 - \item \texttt{solid / dashed / dotted / dash dot / dash dot dot / \dots} \par - 指定线条类型(实线、虚线等)。 - \item \texttt{rounded corners} \par - 将路径转向处绘制成圆角。可写成 \texttt{rounded corners=\Arg{radius}} 使用给定的半径。 + \item \texttt{\Arg{arrow}-\Arg{arrow}} 指定线条首尾的箭头形式。 + 较为复杂的箭头形式需要使用 \cmd{use\-tikz\-library}\marg*{arrows.meta}。 \end{itemize} -\hrule +\begin{example} +\begin{tikzpicture}[thick] +\draw[->] (0,4) -- (3,4); +\draw[->>] (0,3.5) -- (3,3.5); +\draw[->|] (0,3) -- (3,3); +\draw[<-] (0,2.5) -- (3,2.5); +\draw[<->] (0,2) -- (3,2); +\draw[>->|] (0,1.5) -- (3,1.5); +\draw[-stealth] (0,1) -- (3,1); +\draw[-latex] (0,0.5) -- (3,0.5); +\draw[-to] (0,0) -- (3,0); +\end{tikzpicture} +\end{example} + \begin{itemize} - \item \texttt{-> / -< / -to / -latex / -stealth / \ldots} \par - 指定路径终点的箭头种类。 - \item \texttt{<- / >- / to- / latex- / -stealth / \ldots} \par - 指定路径起点的箭头种类。起点和终点的箭头可以搭配,如 \texttt{<->} 或者 \texttt{latex-to} 等。 + \item \texttt{rounded corners\oarg*{=\Arg{radius}}/sharp corners} 将路径转向处绘制成圆角/直角。可选参数 \Arg{radius} 控制圆角的半径。 + 可以对某一段路径直接使用。 \end{itemize} -\hrule +\begin{example} +\begin{tikzpicture} +\draw[rounded corners] + (0,0) rectangle (1,1); +\draw (2,0) -- (2,1) + [rounded corners=.3cm] + -- (3,1) -- (3.5,0) + [sharp corners] -- cycle; +\end{tikzpicture} +\end{example} + \begin{itemize} - \item \texttt{scale=\Arg{scale}} \par - 指定整个图像或某个路径的缩放比例。 - \item \texttt{xshift=\Arg{length} / yshift=\Arg{length}} \par - 指定整个图像或某个路径相对于原位置的水平/垂直位移。 - \item \texttt{rotate=\Arg{angle}} \par - 指定整个图像或某个路径旋转一定角度。 + \item \texttt{scale/xshift/yshift/xslant/yslant/rotate} 设定图形的缩放、位移和旋转。 \end{itemize} -\hrule -\end{table} +\begin{example} +\begin{tikzpicture} +\draw[help lines](0,0) rectangle (1,1); +\draw[scale=1.5] (0,0) rectangle (1,1); +\draw[rotate=30] (0,0) rectangle (1,1); +\draw[help lines](2,0) rectangle (3,1); +\draw[yshift=4pt](2,0) rectangle (3,1); +\draw[help lines](4,0) rectangle (5,1); +\draw[xslant=0.4](4,0) rectangle (5,1); +\end{tikzpicture} +\end{example} + +为了重复利用绘图参数,减少代码冗余,\TikZ\ 引入了“样式”的概念,可以定义一个样式包含绘图参数, +然后将样式作为一个参数用于绘图: +\begin{example} +\begin{tikzpicture} + [myarrow/.style={blue,thick,->}] +\draw (0,0)--(0,1)--(2,1); +\draw[myarrow] (0,0)--(2,1); +\draw[myarrow,dotted] + (0,0)--(2,0)--(2,1); +\end{tikzpicture} +\end{example} + +\envindex[tikz]{scope} +\TikZ\ 还提供了 \env{scope} 环境,令绘图参数或样式在局部生效: +\begin{example} +\begin{tikzpicture} +\draw (0,0) rectangle (2.5, 2.5); +\begin{scope}[thick,scale=0.5] +\draw (0,0) rectangle (2.5, 2.5); +\end{scope} +\end{tikzpicture} +\end{example} \subsection{\TikZ\ 文字结点}\label{subsec:tikz-node} @@ -271,37 +335,50 @@ \subsection{\TikZ\ 文字结点}\label{subsec:tikz-node} \end{tikzpicture} \end{example} -表 \ref{tbl:tikz-options} 中的参数可用于 \cmd{node} 命令的配置。除此之外,\cmd{node} 还有一些特定的参数,见表 \ref{tbl:tikz-node-options}。 +\ref{subsec:tikz-draw} 小节中的参数可用于 \cmd{node} 命令的配置。除此之外,\cmd{node} 还有一些特定的参数: +\begin{itemize} + \item \texttt{anchor=\Arg{position}} 令结点的某个角落 \Arg{position} 与 \Arg{coordinate} 对应。 + \item \texttt{centered / above / below / left / right / above left / \ldots \oarg*{=\Arg{length}}} \\ + 与 \texttt{anchor} 等效的选项。可选的 \Arg{length} 为节点相对于 \Arg{coordinate} 的距离。 +\end{itemize} +\begin{example} +\begin{tikzpicture} +\coordinate (A) at (1,1); +\fill (A) circle[radius=2pt]; +\node[draw,anchor=south] at (A) {a}; +\node[draw,below right=4pt] at (A) {b}; +\end{tikzpicture} +\end{example} -\begin{table}[htp] -\caption{\TikZ\ 结点使用的一些绘图参数。}\label{tbl:tikz-node-options} -\small -\hrule \begin{itemize} - \item \texttt{anchor=\Arg{position}} \par - 指定结点的某个角落 \Arg{position} 位于给定的位置 \Arg{coordinate}。 - 参数 \Arg{position} 用 \texttt{center}、\texttt{north}、\texttt{north west} 等形式表示。 - \item \texttt{centered / above / below / left / right / above left / \ldots} \par - 指定结点相对于 \Arg{coordinate} 的位置,\texttt{anchor=\Arg{position}} 的等效写法。\texttt{above} 相当于 \texttt{anchor=south},以此类推。 - 带参数的形式 \texttt{above=\Arg{length}} 指定节点相对于 \Arg{coordinate} 的距离。 - \item \texttt{shape=\Arg{shape}} \par + \item \texttt{shape=\Arg{shape}} 结点的形状,默认可用 \texttt{rectangle} 和 \texttt{circle},可省略 \texttt{shape=} 直接写。在导言区使用命令 \cmd{use\-tikz\-library}\marg*{shapes.geometric} 可用更多的形状。 - \item \texttt{inner sep=\Arg{length} / outer sep=\Arg{length}} \par - 结点边界向外和向内的额外距离。 - \item \texttt{minimum size=\Arg{length} / minimum height=\Arg{length} / minimum width=\Arg{length}} \par - 结点的最小大小或最小高度/宽度。 - \item \texttt{text=\Arg{color}} \par + \item \texttt{text=\Arg{color}} 结点文字的颜色。 - \item \texttt{node font=\Arg{font command}} \par + \item \texttt{node font=\Arg{font command}} 结点文字的字体,形如 \cmd{bfseries} 或 \cmd{itshape} 等。 \end{itemize} -\hrule -\end{table} +\begin{example} +\begin{tikzpicture} +\node[circle,fill=blue,text=white, + font={\bfseries}] + (A) at (0,0) {A node}; +\node[rectangle,rounded corners, + draw=gray,font={\sffamily\slshape}] + (B) at (2,0) {B node}; +\end{tikzpicture} +\end{example} + +\begin{itemize} + \item \texttt{inner sep=\Arg{length} / outer sep=\Arg{length}} + 结点边界向外和向内的额外距离。 + \item \texttt{minimum size=\Arg{length} / minimum height=\Arg{length} / minimum width=\Arg{length}} \\ + 结点的最小大小或最小高度/宽度。 +\end{itemize} \cmd{node} 命令不仅为文字结点的位置命名,在 \cmd{draw} 等命令中还可以使用某个结点的相对位置, 以“东南西北”的方式命名: - \begin{example} \begin{tikzpicture} \draw (0,0) circle[radius=1]; @@ -311,7 +388,7 @@ \subsection{\TikZ\ 文字结点}\label{subsec:tikz-node} \end{tikzpicture} \end{example} -另一种用法是在 \cmd{draw} 等命令的路径中使用 \texttt{node},不仅可以对某个位置标记节点,还能够对线标记: +\cmd{node} 命令的一种等效用法是在 \cmd{draw} 等命令的路径中使用 \texttt{node},不仅可以对某个位置标记节点,还能够对线标记: \begin{example} \begin{tikzpicture} \draw (2,1.5) node[above] {$A$} @@ -324,8 +401,7 @@ \subsection{\TikZ\ 文字结点}\label{subsec:tikz-node} \end{tikzpicture} \end{example} -除了 \cmd{node} 命令之外,\cmd{coordinate} 也可以通过参数为某个位置添加文字(label)。 -在此举一个较为复杂的例子,综合前面介绍过的各种路径、形状、文字结点和参数设置。 +在此举一个较为复杂的例子,综合前面介绍过的各种路径、形状、文字结点和参数设置,见源代码 \ref{code:tikz-example}。 \begin{sourcecode}[htp] \begin{Verbatim} @@ -334,8 +410,8 @@ \subsection{\TikZ\ 文字结点}\label{subsec:tikz-node} \draw[-stealth,line width=0.2pt] (0,-0.5) -- (0,2.5); \coordinate (a) at (0.5,1.9); \coordinate (b) at (4,1.2); -\coordinate[label=below:$a$] (a0) at (a |- 0,0); -\coordinate[label=below:$b$] (b0) at (b |- 0,0); +\node[below] (a0) at (a |- 0,0) {$a$}; +\node[below] (b0) at (b |- 0,0) {$b$}; \filldraw[fill=gray!20,draw,thick] (a0) -- (a) .. controls (1,2.8) and (2.7,0.4) .. (b) -- (b0) -- cycle; \node[above right,outer sep=0.2cm, rounded corners, diff --git a/src/chap/chap.08.custom.tex b/src/chap/chap.08.custom.tex index bd99aa6..bf0954a 100644 --- a/src/chap/chap.08.custom.tex +++ b/src/chap/chap.08.custom.tex @@ -132,7 +132,7 @@ \subsection{编写简单的宏包}\label{subsec:provide-pkg} \cmd{ProvidesPackage}\marg{package name} \end{command} 这个命令应该放在你的宏包的最前面,并且一定要注意:\textbf{\Arg{package name} 需要和宏包的文件名一致。} -\cmd{Provides\-Package} 让 \LaTeX\ 记录宏包的名称,从而在你尝试再次调用同一个宏包的时候忽略后面的调用% +\cmd{Provides\-Package} 让 \LaTeX\ 记录宏包的名称,从而在 \cmd{usepackage} 命令再次调用同一个宏包的时候忽略之% \footnote{但如果你以\emph{不同的选项}多次引入宏包,则有可能会引起错误,见附录 \ref{sec:errors}。}。 源代码 \ref{code:package} 给出了一个小的宏包示例,其中包含了我们之前定义的一些命令。 diff --git a/src/chap/preface.overview.tex b/src/chap/preface.overview.tex index dc717fb..3bf947d 100644 --- a/src/chap/preface.overview.tex +++ b/src/chap/preface.overview.tex @@ -14,7 +14,7 @@ \chapter{前言} \item[第二章] 讲述在 \LaTeX\ 中如何书写文字,包括中文。% \item[第三章] 讲述文档排版的基本元素——标题、目录、列表、图片、表格等等。结合前一章的内容,你应当能够制作内容较为丰富的文档了。% \item[第四章] \LaTeX\ 排版公式的能力是众人皆知的。本章的内容涉及了一些排版公式经常用到的命令、环境和符号。 - 章节末尾提供了 \LaTeX\ 常见的数学符号。% + 章节末尾列出了 \LaTeX\ 常见的数学符号。% \item[第五章] 介绍了如何修改文档的一些基本样式,包括字体、段落、页面尺寸、页眉页脚等。 \item[第六章] 介绍了 \LaTeX\ 的一些扩展功能:排版参考文献、排版索引、排版带有颜色和超链接的电子文档。 \item[第七章] 介绍了如何在 \LaTeX\ 里使用 \TikZ\ 绘图。作为入门手册,这一部分点到为止。 diff --git a/src/chap/sec.symbol.table.tex b/src/chap/sec.symbol.table.tex index 45f6833..cbd06ec 100644 --- a/src/chap/sec.symbol.table.tex +++ b/src/chap/sec.symbol.table.tex @@ -53,7 +53,7 @@ \subsection{\LaTeX\ 普通符号} \caption{希腊字母。} \label{tbl:math-greek} \begin{quote}\footnotesize% \cmd{Alpha},\cmd{Beta} 等希腊字母符号不存在,因为它们和拉丁字母 A,B 等一模一样; -小写字母里也不存在 \cmd{omicron},直接用 $o$ 代替。 +小写字母里也不存在 \cmd{omicron},直接用拉丁字母 $o$ 代替。 \end{quote} \begin{symbols}{*4{cl}} \hline @@ -67,7 +67,7 @@ \subsection{\LaTeX\ 普通符号} \SYM{\eta} & \SYM{\xi} & \SYM{\tau} & \\[1ex] \SYM{\Gamma} & \SYM{\Lambda} & \SYM{\Sigma} & \SYM{\Psi} \\ \SYM{\Delta} & \SYM{\Xi} & \SYM{\Upsilon} & \SYM{\Omega} \\ - \SYM{\Theta} & \SYM{\Pi} & \SYM{\Phi} & \\ + \SYM{\Theta} & \SYM{\Pi} & \SYM{\Phi} & \\[1ex] \AMSM{\varGamma} & \AMSM{\varLambda}& \AMSM{\varSigma} & \AMSM{\varPsi} \\ \AMSM{\varDelta} & \AMSM{\varXi} & \AMSM{\varUpsilon}& \AMSM{\varOmega} \\ \AMSM{\varTheta} & \AMSM{\varPi} & \AMSM{\varPhi} & \\ @@ -126,7 +126,7 @@ \subsection{\LaTeX\ 普通符号} \begin{table}[htp] \centering \caption{巨算符。}\label{tbl:math-bigop} -\def\arraystretch{1.8} +\def\arraystretch{2.2} \begin{symbols}{*3{ccl}} \hline \BIGSYM{\sum} & \BIGSYM{\bigcup} & \BIGSYM{\bigvee} \\ diff --git a/src/chap/titlepage.tex b/src/chap/titlepage.tex index 8688699..5e889ce 100644 --- a/src/chap/titlepage.tex +++ b/src/chap/titlepage.tex @@ -4,7 +4,7 @@ \vspace*{\stretch{1}} \noindent\begin{minipage}{\textwidth} \raggedleft -{\huge \bfseries 一份不太简短的~\LaTeXe{}~介绍} +{\huge \bfseries 一份(不太)简短的~\LaTeXe{}~介绍} \noindent\rule[-1ex]{\textwidth}{5pt}\\[2.5ex] \hfill\emph{\Large 或~\pageref{lshort-minutes}~分钟了解~\LaTeXe} \end{minipage} @@ -13,9 +13,9 @@ \noindent\rlap{% \begin{minipage}{\textwidth} \linespread{1.67}\selectfont\raggedleft - {\bfseries 原版作者:} Tobias Oetiker\\ + {\bfseries 英文作者:} Tobias Oetiker\\ Hubert Partl, Irene Hyna and Elisabeth Schlegl \\ - {\bfseries 原版版本:} Version~\lshortversionoriginal, \lshortdateoriginal\\[4ex] + {\bfseries 英文版本:} Version~\lshortversionoriginal, \lshortdateoriginal\\[4ex] {\bfseries 中文翻译:} C\TeX\ 开发小组 \\ {\bfseries 中文版本:} 版本~\lshortversioncn,\zhdigits*{\the\year}年\zhnumber{\the\month}月 \end{minipage}% diff --git a/src/lshort-zh-cn.tex b/src/lshort-zh-cn.tex index 00520e8..62ba41d 100644 --- a/src/lshort-zh-cn.tex +++ b/src/lshort-zh-cn.tex @@ -3,7 +3,7 @@ \def\lshortversionoriginal{6.2} \def\lshortdateoriginal{Februrary 28, 2018} -\def\lshortversioncn{5.11} +\def\lshortversioncn{6.0} \hypersetup{% pdftitle={The Not So Short Introduction to LaTeX2e(Chinese Simplified)},%