练习需求
- 能够导出带有目录的pdf文件
- pdf文件由与目录对应的书签,目录颜色为黑,且能够点击并导航
- 使用图片排绕功能,并适当缩放图片大小
- 使用脚注
- 使用浮动体完成图片并排显示
- 制作简易表格
- 图片的缩放
源代码
导出带有目录书签的pdf文件[1]
使用\tableofcontents
命令生成目录,并且至少编译两边才能生成完整目录。
使用hyperref
宏包可以导出带有目录书签的pdf文件。具体来说,是在导言区使用如下语句
\usepackage[
CJKbookmarks=true,
bookmarksnumbered,
bookmarksopen,
pdftitle={East Indian Company},
pdfauthor=Azur,
pdfstartview=FitH,
colorlinks=true,
linkcolor=black
]{hyperref}
-
如果文中使用了中文,就要用
CJKbookmarks=true
选项 -
bookmarksnumbered
表示书签中添加章节序号(测试了一下好像有没有都不影响章节序号的输出:-( ) -
bookmarksopen
表示pdf文件打开时展开所有书签,无此选项表示不展开。
无bookmarksopen选项,在打开pdf时书签是缩合的
有bookmarksopen选项,所有书签都是展开的
-
pdftitle={East Indian Company.pdf},pdfauthor=Azur
是设置标题和作者。注意这个标题并不是指pdf文件的文件名。pdf文件的文件名默认是与tex文件的文件名相同。事实上这两个选项是作为元数据的。具体来说是在 文件-属性-说明 中可以看见
元数据
-
pdfstartview=FitH
表示打开pdf文件时,页面的大小。FitH
表示打开时页面宽度等于整个显示区的宽度。默认是Fit
,即显示区恰好能显示整个页面。此外还有其它选项,如FitV
、FitB
等。
默认是Fit,即显示区恰好能显示整个页面。
FitH表示打开时页面宽度等于整个显示区的宽度
-
默认情况下,输出的pdf文件目录是带有红色边框的(如上图所示),为此需要使用
colorlinks=true
选项,表示使用颜色而不是方框。但是默认情况下目录颜色是红色,为了能够输出黑色,就要使用linkcolor=black
语句。
图片排绕功能
图片排绕就类似于Word中插图的文字环绕,例如:

上面的例子中,图片位于右侧,排绕于图片上方的文字行数为1,插图具有标题。
首先导入宏包
graphicx,picinpar
,代码如下:
\begin{figwindow}[
1, %排绕上方的文字行数为1
r, %位于右侧
{\includegraphics[width=0.3\linewidth %图片的宽度是\linewidth的30%
]{figure-0.jpg} %图片名
},{Auspico Regis et Senatus Angliae}] %图片标题
……%文字内容
\end{figwindow}
\textwidth
is the normal width of the text on a page. It should generally be changed only in the preamble.
\linewidth
is the width of lines in the current environment. Normally equal to\textwidth
, it may be different within an environment such as list or quote environments.
使用脚注
\footnote
命令可以添加脚注,例如:
东印度公司的总部在伦敦利德贺街(Leadenhall Street)。
它主要建立了英属印度。1717年莫卧尔帝国
\footnote{莫卧儿帝国是突厥化……的语言。} %脚注footnote
皇帝下令免除东印度公司在孟加拉的关税,
效果如下:

图片并排
图片并排使用到了浮动体组,需要导入floatrow
宏包:

\begin{figure}[!h] %图片环境
\begin{floatrow} %浮动体组
\ffigbox{ %ffigbox表示图片组,另ttabbox是表格组
\caption{1801年至1874年结业前的公司旗帜} %标题
}{
\includegraphics[height=0.15\textheight]{figure-1.jpg} %插入的图片
}
\ffigbox{ %第二幅插图
\caption{公司总部设于东印度大楼}
}{
\includegraphics[height=0.15\textheight]{figure-2.jpg}
}
\end{floatrow}
\end{figure}
ffigbox
实际上有个可选项 宽度 :\ffigbox[宽度]{\caption{标题}}{图片}
。这个宽度并不是指图片的缩放宽度,而是指:
- 如果标题在浮动体上方或下方,则宽度指的是插图标题的宽度
- 如果标题是在浮动体的侧面,则指的是浮动体宽度
例如,如果设置\ffigbox[3mm]{....
,那么就会有:

图片宽度本身不会被这个可选参数改变,它修改的是浮动体宽度,这就意味着标题会被设置为这个宽度,并且被其他图片覆盖。
简易表格
制作简单的表格用到宏包array
。

完成这个表格所需要的代码如下:
\begin{tabular}{|c@{:}l|c@{:}l|}
\multicolumn{4}{c}{荷属东印度公司信息表}\\
\hline
公司名称 & 荷兰东印度公司 &外文名称 &Dutch East India Company \\
\hline
总部地点 &荷兰阿姆斯特丹 &成立时间 &1602年3月20日 \\
\hline
经营范围 &贸易公司 &公司类型 &殖民性掠夺以及垄断性贸易 \\
\hline
员工数 &25000名& 解散时间 &1799年 \\
\hline
\end{tabular}
\vspace{3mm}
首先是tabular
环境。
表格的整体结构由后面的语句|c@{:}l|c@{:}l|
描述:
- 它有四列,第一、三列居中,第二、四列居左,即
clcl
格局(居右使用r
) -
|
表示绘制表格竖线,因为是|cl|cl|
格局,因此它表示在表格两端和第二、三列中间绘制表格竖线。 -
@{:}
表示列之间的分隔符,c@{:}l
表示第一列和第二列使用冒号:
分隔
具体示意图如下:

-
\multicolumn{4}{c}{荷属东印度公司信息表}
表示合并单元格,一次合并4个单元格,内容居中(c
)显示。 - 行末的
\\
表示换行,即下面的内容排到表格下一行 -
\hline
表示绘制水平线,注意到最后一行单独是\hline
,即给表格封底线 -
&
表示列分隔符
我们注意到第一行(“荷属东印度公司信息表”)没有左右边栏竖线,这是因为使用\multicolumn
命令合并单元格时,我们重新指定了布局c
,如果想要加边栏,需要使用布局|c|
\multicolumn{4}{|c|}{荷属东印度公司信息表} % 使用 |c| 布局
效果如下:

这里上面没有横线,因为我们没有在上方使用\hline
命令。
利用这一点,我们可以做出表格标题。
图片的缩放
使用\scalebox
可以完成对图片、文字的比例缩放
\scalebox{1}[0.6]{
\includegraphics[width=1\linewidth]{figure-4.jpg}}
它表示把图片进行缩放,宽度缩放比为1(即宽度不变),高度缩放比为0.6(即压缩到原来高度的60%)。
因此它可以嵌在图片环境中:
\begin{figure}[h]
\centering
\caption{荷属东印度公司交易网络}
\scalebox{1}[0.6]{\includegraphics[width=1\linewidth]{figure-4.jpg}}
\end{figure}
其效果为:

网友评论