0%

说明

本文中所述的链接都是在解决实际问题中自己一个个积累下来的。发布在博客中做一个网址目录,配合博客的搜索全文的功能,希望能对学习 LaTeX 的我们有些帮助,后期也会随时更新此处的链接。最后,如果你也有相关的优秀资源,可以再评论区发一下呀 (^▽^),在这里提前谢谢你哦!

格式转换

Excel - LaTeX - HTML - Markdown 转换工具

图片压缩

矢量绘图工具

  • Drawio (Win,Mac, 浏览器;免费)
  • Sketch(Mac)
  • Figma (Win,Mac, 浏览器)
  • Visio(Win)
  • Inkscape (Win,Mac; 免费)

字体

LaTeX 技术博客

LaTeX 实用资源

待续

宏包

注:本文内容的主体结构转载自博客园 LaTeXmath:LaTeX 中列表环境的使用,本人仅对案例中的一些代码、图片及一些宏包的使用做了一些补充,

列表就是将所要表达的内容分为若干个条目并按一定的顺序排列,达到简明、直观的效果。在论文的写作中会经常使用到列表。LaTeX 中常见的列表环境有 enumerate、itemize 和 description。这三种列表环境的主要区别是列表项标签的不同:

有序列表和无序列表无需在进行介绍,对于 description 列表来说,可指定其标签

1
2
3
4
5
6
7
8
9
\documentclass{ctexart}
\usepackage{pifont}
\begin{document}
\begin{description}
\item[\ding{47}] This is the first item
\item[\ding{47}] This is the second item
\item[\ding{47}] This is the third item
\end{description}
\end{document}

01-指定description标签.png

了解关于 pifont 宏包的更多信息,请参考:pifont – Access to PostScript standard Symbol and Dingbats fonts,如下为 pifont 的一些字符

02-pifont的一些字符.png

或者参阅以下的简要信息快速了解 pifont 宏包

The package provides commands for Pi fonts (Dingbats, Symbol, etc.); all commands assume you know the character number within the font of the symbol within the font.

列表环境也可以互相嵌套,默认情况下不同层级的标签不同,以体现分级层次。
上述三种列表都是基于 list 列表环境 定制的,也就是说 list 环境是功能最强大的列表环境,只是由于它使用起来比较麻烦,所以很少被使用。其实上述的三种列表在通过一定的扩展后可以产生许多样式的列表,这些基本就可以满足平时的需要了。下面说一下怎么进行功能扩展。enumitem 宏包可以对 enumerate、itemize 和 description 环境进行功能扩展,并且提供了简便的语法。enumitem 宏包允许用户在上述三种列表中通过 key=value 的键值方式进行设置。可选的设置项包括:

  • 垂直距离
1
2
3
4
topsep  
partopsep
parsep
itemsep
  • 水平距离
1
2
3
4
5
6
leftmargin  
rightmargin
listparindent
labelwidth
labelsep
itemindent

这些距离的含义可以从图示中反映出来,更详细的说明可以参看 enumitem 宏包的说明文档,或可参考:enumitem 宏包中的长度设置 @无锤乙醇(再次感谢这些中文独立博客做出的巨大贡献,凭借一己之力节省了大家不知多少时间ヾ (❀^ω^) ノ゙)

03-list环境中的水平参数.png

以如下代码对自定义列表环境进行案例分析:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
\documentclass{ctexart}
\usepackage{enumerate}
\usepackage{enumitem}
\setlist[enumerate,1]{label=(\arabic*).,font=\textup,
leftmargin=7mm,labelsep=1.5mm,topsep=0mm,itemsep=-0.8mm}
\setlist[enumerate,2]{label=(\alph*).,font=\textup,
leftmargin=7mm,labelsep=1.5mm,topsep=-0.8mm,itemsep=-0.8mm}
\begin{document}
\begin{enumerate}
\item 这是一个一级列表
\item 看我在嵌套一个二级列表
\begin{enumerate}
\item 这是一个二级列表
\end{enumerate}
\end{enumerate}
\end{document}

 \setlist[enumerate,1] 表示对一级列表进行设置,\setlist[enumerate,2] 表示对二级列表进行设置。这样一级列表的标签就是括号加阿拉伯数字加点,二级标签是括号加小写英文字母加点。输出效果为:

04-自定义修改列表样式.png

font=\textup 表示使用直立体(可参考官方入门手册)

05-字体命令.png

参考资料

前言

在用 LaTeX 排版文章、书籍时,缺省定义了四种页眉页脚的格式:

参数 说明
empty 没有页眉和页脚
plain 没有页眉,页脚中部放置页码。
headings 没有页脚,页眉包含章节的标题和页码。
myheadings 没有页脚,页眉页码和使用者所定义的信息。

article 缺省使用 plain 格式,而 book 则使用 headings 格式。 也可用 \pagestyle 命令在你的文档中设定所用的格式,例如在文档中使用 \pagestyle{empty} 则使得此后的页面没有页眉和页脚。 一般情况下,这四种格式基本可满足排版的要求。但在某些情况下,特别是使用者想定义自己的页眉和页脚格式时,就会遇到很多限制和麻烦。这时, 使用 fancyhdr 宏包可以很容易地达到目的。

利用 fancyhdr 宏包提供的命令,可以方便的作到:

  • 自定义页眉和页脚。
  • 为页眉和页脚加上装饰性的横线。
  • 页眉和页脚的宽度可以超过正文文本的宽度。
  • 多行的页眉和页脚。
  • 奇偶页使用不同格式的页眉和页脚。
  • 每章的首页使用不同格式的页眉和页脚。
  • 浮动对象页使用不同格式的页眉和页脚。
  • 控制页眉和页脚的字体,包括字形,字族,大小写等。

基本用法

单面排版

由 fancyhdr 所定义的页眉和页脚的形式与位置如图所示:

06-奇数页样式.png

上述六个区域的内容和两条装饰线可由用户自己定义。

1
2
3
4
5
6
7
8
\lhead{left head}
\chead{center head}
\rhead{right head}
\lfoot{left foot}
\cfoot{center foot}
\rfoot{right foot}
\renewcommand{\headrulewidth}{0pt} %设置页眉横线宽度为0
\renewcommand{\footrulewidth}{0pt} %设置页脚横线宽度为0

如果想在文档中改用其它形式,比如在第一页不要页眉和页脚,则可在 \begin{document} 和 \maketitle 后使用命令

1
\thispagestyle{empty}

缺省情况下,\maketitle 命令会自动设置其所在页的格式为 plain 。因此,如果你想在该页使用 fancy 格式的话,应该在 \maketile 后面使用命令 \thispagestyle{fancy}

双面排版

下面是一个双面页版式下的例子(book、ctexbook 等文档类默认为双面排版):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
\documentclass{ctexbook}  
\usepackage{zhlipsum} %用于生成假文
\usepackage{fancyhdr}
\fancyhead{} %清空所有页眉页脚设置
\fancyhead[RO,LE]{\bfseries 作者:原装咖啡}
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,CE]{From: Coffeelize.top}
\fancyfoot[CO,RE]{To: Latex User}
\renewcommand{\headrulewidth}{0.4pt} \renewcommand{\footrulewidth}{0.4pt}
\begin{document}
\pagestyle{fancy} %非常关键的一句命令
\section{第一章}
\zhlipsum[1-3]
\end{document}

对于奇数页
06-奇数页样式.png
对于偶数页
07-偶数页样式.png

这里方括号中字母代表的意义为:

符号 说明
E 偶数页
O 奇数页
L 页眉或页脚的左边部分
C 页眉或页脚的中间部分
R 页眉或页脚的右边部分
H 页眉
F 页脚

设置页眉页脚横线的宽度

1
2
\renewcommand{\headrulewidth}{0.4pt} % 设置页眉横线宽度为0.4
\renewcommand{\footrulewidth}{0.4pt} % 设置页脚横线宽度为0.4

拓展应用

修改页码的颜色

还记得以上案例中的这句代码吗

1
\pagestyle{fancy} %非常关键的一句命令

这句代码的意思是使用 fancy 这个样式(我们并没有对其进行定义,可能是文档类已经对其进行了预定义)
实际上我们也是可以自定义这个 pagestyle 的,如下代码中定义了一个新的 pagestyle:fancy-note

1
2
3
4
5
6
7
8
9
10
11
12
%语法\fancypagestyle{style name}{definitions} 
\fancypagestyle{fancy-note}{
\fancyhf{} %同时清空页眉页脚
%语法\fancyfoot[places]{footer}
\fancyfoot[c]{\footnotesize\textcolor{mycolor}{\thepage}}
}
% 正文开始
\begin{document}
%...
\pagestyle{fancy-note} %调用自定义的pagestyle
%...
\end{document}

最终输出为

092-调整页脚字体颜色.png

以上代码中
\textcolor 需要使用 xcolor 宏包(用于自定义颜色名称,可以参考博客之前的文章:Latex 之字体颜色篇
\footnotesize 则是已经预定于好的页脚字体的字号

09-预定于的字号.png

标准文档类中的字号大小

091-标准文档类中的字号大小.png

字号 10pt 选项(默认) 11pt 选项 12pt 选项
\tiny 5pt 6pt 6pt
\scriptsize 7pt 8pt 8pt
\footnotesize 8pt 9pt 10pt
\small 9pt 10pt 10.95pt
\normalsize 10pt 10.95pt 12pt
\large 12pt 12pt 14.4pt
\Large 14.4pt 14.4pt 17.28pt
\LARGE 17.28pt 17.28pt 20.74pt
\huge 20.74pt 20.74pt 24.88pt
\Huge 24.88pt 24.88pt 24.88pt

参考资料

常规的交叉引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
\documentclass{ctexart}
\usepackage{graphicx}
%\usepackage{hyperref}
%\def\figureautorefname{图}%
%\def\tableautorefname{表}%
\begin{document}
\section{第一章}

\begin{figure} [htbp]
\centering
\includegraphics{example-image-duck}
\caption{This is a duck image}
\label{duck}
\end{figure}

这是一段正文,这里需要交叉引用这张图片。由\ref{duck}可知,图片当中是一只鸭子。
\end{document}

01-autoref命令使用.png

从输出的图片可以看出,通过标签的形式实现图片的交叉引用,交叉引用中只会出现交叉引用的序号 “1”,而不是输出 “图 1”,如果要实现输出 “图 1” 的效果,需要在 tex 中手动添加,如:

1
由图 \ref{duck}可知,图片当中是一只鸭子。

那么每次交叉引用图、表、公式等都需要手动去敲这个 “前缀”,有没有更人性化一些的工具或宏包呢?
引出今天的主角:hyperref 宏包

hyperref 宏包

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{hyperref}
\def\figureautorefname{图}%将默认的“figure”改为“图”
\def\tableautorefname{表}%

\begin{document}
\section{第一章}

\begin{figure} [htbp]
\centering
\includegraphics{example-image-duck}
\caption{This is a duck image}
\label{duck}
\end{figure}

这是一段正文,这里需要交叉引用这张图片。由\autoref{duck}可知,图片当中是一只鸭子。
\end{document}

02-默认的ref引用格式.png

简要步骤如下

  1. 使用 hyperref 宏包(可修改引用时的 “前缀”)
  2. 需要交叉引用的位置打上标签
  3. 正文中通过使用 \autoref{mylabel} 实现交叉引用

但是,也引出了一个新问题,存在交叉引用的地方有红色的边框

如何去除 hyperref 带来的红边框

解决方案 1

1
\usepackage[hidelinks]{hyperref}

解决方案 2

1
2
3
4
\hypersetup{
colorlinks=true,
linkcolor=black
}

推荐解决方案 1,也就是 hyperref 宏包提供的参数设置中的可选参数 hidelinks

03-hyperref宏包提供的参数设置.png

hyperref 宏包提供的更多参数设置可查阅 Latex 的官方入门手册:一份(不太)简短的 LaTeX2ε 介绍

拓展

1
2
3
4
5
6
\usepackage{hyperref}
\def\figureautorefname{图}%
\def\tableautorefname{表}%
%对于以上3句代码中的后两句下,如下命令可等效
%\renewcommand{\figureautorefname}{图}
%\renewcommand{\tableautorefname}{表}

除了图和表之外,对于其他如定理环境的交叉引用汇总如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
\def\equationautorefname{式}%
\def\footnoteautorefname{脚注}%
\def\itemautorefname{项}%
\def\figureautorefname{图}%
\def\tableautorefname{表}%
\def\partautorefname{篇}%
\def\appendixautorefname{附录}%
\def\chapterautorefname{章}%
\def\sectionautorefname{节}%
\def\subsectionautorefname{小小节}%
\def\subsubsectionautorefname{subsubsection}%
\def\paragraphautorefname{段落}%
\def\subparagraphautorefname{子段落}%
\def\FancyVerbLineautorefname{行}%
\def\theoremautorefname{定理}%

参考资料

脚注使您可以添加注释和参考,而不会使文档正文混乱。当您创建脚注时,带有脚注的上标数字会出现在您添加脚注参考的位置。读者可以单击链接以跳至页面底部的脚注内容。参考资料 [1]

要创建脚注参考,请在方括号([])内添加插入符号 (^) 和标识符 (类似于标签 label)。标识符可以是数字或单词,但不能包含空格或制表符。标识符仅将脚注参考与脚注本身相关联 - 在输出中,脚注按顺序编号。

在括号内使用另一个插入符号和标识符 (数字) 添加脚注,并用冒号和文本。注意可以不必在文档末尾添加脚注,可以将这些引用放在除列表,块引号和表之类的其他元素之外的任何位置。

语法如下:

1
2
3
This is my blog[1]

[^1]: [智朋的个人博客](https://coffeelize.top)

比如其他编辑器中渲染出来的脚注是这样的

04-其他编辑器中渲染markdown脚注.jpeg

但是 Hexo 默认的 Markdown 渲染器是不支持渲染脚注的 [2],为了实现上述的功能,可以通过安装如下插件 hexo-reference[3]

01-hexo默认的渲染器无法渲染markdown的脚注语法.jpeg

具体安装过程详见该仓库的 Readme(很简单的操作,一句安装代码即可搞定),如下是安装插件后的效果

03-安装脚注渲染插件之后.jpeg

简介

Caption 宏包中的一些参数说明及案例分析,用于自定义设置浮动体中标题的样式 o (^▽^) o

  1. 修改全篇浮动体标题格式(包括图片,表格等)
1
2
3
4
5
% 导言区
\usepackage[font=small,labelfont=bf]{caption}
% 下面命令与之等价
\usepackage{caption}
\captionsetup{font=small,labelfont=bf}
  1. 单独对浮动体的图片或表格环境中标题的设置
1
2
3
4
% 导言区
\usepackage{caption}
\captionsetup[figure]{font=small,labelfont=bf}
\captionsetup[table]{font=small,labelfont=bf}

案例 1:加粗标题的图标签

1
2
3
4
5
6
7
8
9
10
11
12
13
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{
labelfont=bf%设置图片标题的编号为加粗
}
\captionsetup[figure]{skip=3pt}
\begin{document}
\begin{figure}
\includegraphics[width=4in]{example-image}
\caption{这个图片标题的图标会加粗}
\end{figure}
\end{document}

01-将图片标题编号加粗.png

实际上,使用 caption 命令不一定真的需要加入图片或者表格,只需要将其应用在浮动体环境当中即可

1
2
3
4
5
6
7
8
9
10
11
12
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{
labelfont=bf%设置图片标题的编号为加粗
}
\captionsetup[figure]{skip=3pt}
\begin{document}
\begin{figure}
\caption{这个图片标题的图标会加粗}
\end{figure}
\end{document}

01-只需将caption插入浮动环境中即可.png

案例 2:设置标题与图片、表格之间的间距

1
2
3
4
%语法
\captionsetup[float type]{options}
%举例
\captionsetup[figure]{skip=3pt} %设置图片标题与图片之间的间距为3pt

对于 Latex 标准的 article、book、report 等文档,默认的 skip 值为 10pt

1
2
3
4
5
6
7
8
9
10
11
12
13
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup[figure]{skip=0pt}
\begin{document}

\begin{figure}
\centering
\includegraphics[width=2in]{example-image-A}
\caption{设置标题与图片间的间距为0}
\end{figure}

\end{document}

03-设置标题与图片之间的间距为0.png

案例 3:更多的标题样式设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
\documentclass[11pt]{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup[figure]{
name=Figure,
listformat=empty, %和List of Figures/Table相关
justification=justified, %即两端对齐(默认)
labelsep=quad, %标题编号与标题之间的分隔符
position=above, %不一定能够设定标题与图片相对之间的位置
skip=3pt, %图片标题与图片之间的距离
width=4in, %图片标题的宽度(这里设置为了和图片一样宽)
labelfont={huge}, %图片标题编号的字号
font={small} %图片标题的字号
}
\begin{document}
\begin{figure}
\centering
\includegraphics[width=4in]{example-image-duck}
\caption{这是一个很长很长很长很很长很长很长长很长很长图片标题}
\end{figure}
\end{document}

02-标题样式设置大汇总.png

参数说明

labelsep

语法

1
labelsep=〈label separator name〉

对应值有

格式 说明
default 同 colon
none 无间隔
colon 英文分号
period 英文句点
space 空格
quad 一个 em 的间隔
newline 标题另起一行
endash 英文 dash 连接符

Justification

语法

1
justification=〈justification name〉

对应的值有

说明
justified 两端对齐,也就是正文默认对齐方式
centering 居中对齐
raggedright 左对齐
raggedleft 右对齐
Raggedright ……

Font

语法

1
2
3
font={font options}
labelfont={font options}
textfont={font options}

对应的 font options

说明
small Small size
normalsize normalsize size
large Large size
it Italic shape
up Upright shape
bf Bold series
rm Roman family
sf Sans Serif family
tt Typewriter family
stretch=amount \setstretch{amount}
color=colour color{colour}

标题宽度

语法

1
2
3
margin=amount %同时设置左右外边距
margin={left amount,right amount} %分别设置左右外边距
witdh=amount %设置标题的宽度

03-图片标题宽度.png

skip

语法

1
skip=amount

position

1
2
3
position=top or position=above
position=bottom or position=below
position=auto(which is the default setting)

请注意:Caption 官方文档中对于该参数的说明

Please note that position=top does NOT mean that the caption is actually placed at the top of the figure or table.
the caption package tries its best to determine the actual position of the caption on its own. Please note that while this is successfully in most cases, it could give wrong results under rare circumstances.

参考资料

前言

想要了解 Windows 上的谷歌拼音输入法?
可以试着阅读以下这篇文章: 谷歌拼音输入法(PC)不完全使用指南

优势 and 劣势

  • 完全离线
  • 已停止更新(实际上已经下架,Google 不在提供维护)
  • 可导入 / 导出用户词典及自定义短语
  • 体积超小(压缩包 15M)、最流畅、皮肤最简洁的输入法

03-皮肤.png

一些实用快捷键

  • 删除误造词:Ctrl + Shift + 数字
  • 一键搜索:Ctrl + G
  • 中英文标点符号切换:Ctrl + >
  • 打开属性面板:Ctrl + Shift + O
  • 全角 / 半角符号切换:Shift+空格

03-一键搜索.gif

注:虽然是中文输入法,但是标点符号可以切换成英文状态,在输入法的显示状态栏里面也有中英文标点符号的信息

个人偏好配置

01-偏好设置.png

01-皮肤偏好设置.png

输入时间日期

小鹤双拼对应 “时间”、“日期” 的双拼分别为 “uijm”、“riqi”

01-输入当前时间和日期.gif

其他功能(I 模式,几乎用不到)

02-开启功能模式插入搜索框.gif

参考资料 & 了解更多

注:以下各个仓库 / 插件的安装,官方教程都写得非常清楚,本文不再赘述,对此话题感兴趣的朋友可以阅读文末的阅读列表

什么是内容农场

内容农场(英文:content farm)是指为了牟取广告费等商业利益或出于控制舆论、带风向等特殊目的,快速生产大量网路文章来吸引流量的网站。此类网站通常找不到作者、管理者、网站负责人,也不会主动管理产出的内容,对侵权或错误内容投诉的处理也很消极。其产出内容多半都是缺乏原创性且真实性无法保证的内容,且有极高比例是盗用、盗译自他人的原创图文,或由非专业写手胡乱拼凑网路文章而来,因而多半缺乏可靠来源、品质低劣、不具参考价值、传播误导讯息,也经常掺杂大量广告或恶意程式

如何终结内容农场

提供以下两种方案,两者均能有效起到一定的屏蔽效果和自定义配置

  1. 终极内容农场
  2. Google-Chinese-Results-Blocklist

终结内容农场

Github 仓库:終結內容農場 (Content Farm Terminator)

05-终结内容农场.png

终结内容农场是一款开源的浏览器扩展,支持 Chrome、Firefox,它会在你打开内容农场网页之前弹出警告,让你离开这些网站。且无需配置,开箱即用

插件安装前
01-搜索结果充斥着大量的内容农场.png

插件安装后(网页前会有内容农场的提示)
02-安装完插件之后提示网页为垃圾内容.png

如何获取

中文搜索结果黑名单

Github 仓库:Google-Chinese-Results-Blocklist

详细使用请查阅该仓库地址。同时,该仓库为我们提供了一些网站黑名单:点击查看,将该列表添加至网页插件的黑名单列表中,在搜索结果中可直接为我们过滤掉黑名单网站,与终极内容农场插件的提示相比,该插件直接从搜索结果中过滤掉了这些网站

04-将网页添加至黑名单列表.png

除了各大网友提供的黑名单列表,该插件还支持随时从搜索结果中将网站加入黑名单,如下图所示:

03-通过插件直接屏蔽掉google的搜索结果.gif

参考资料 & 了解更多

速览

1
2
3
4
\usepackage{zhlipsum}
%...
\zhlipsum[需要从假文中抽取的段落][name=假文库] %两个参数都是可选参数
\newzhlipsum{自定义假文库名}{{假文段落1},{假文段落2},{假文段落n}} %自定义假文库,注意假文的每个段落以大括号包裹,中间使用英文逗号隔开

以下几个案例将分别从这三句命令对本宏包进行说明

中文假文

从无意义的假文中选定段落

1
2
3
4
5
6
7
8
\documentclass{ctexart}
\usepackage{zhlipsum}
\begin{document}
%zhlipsum第一个可选参数为选取段落参数
\zhlipsum[1] %从假文中(共50段)选择第一段
\zhlipsum %也可以不加参数,默认输出1-3段
\zhlipsum[1-2] %从假文中选择第1-2段 ,可以以“数字-数字”的形式指定
\end{document}

01-从假文中抽取段落.png

从指定假文库中抽取段落

宏包作者预定义了 6 个假文库

名称 段落数 简体 / 繁体 描述
simp 50 无意义随机假文
trad 50 无意义随机假文
nanshanjing 43 《山海经・南山经》
xiangyu 45 司马迁《史记项羽本纪》
zhufu 110 鲁迅《祝福》
aspirin 66 维基百科条目:阿司匹林
1
2
3
4
5
6
7
\documentclass{ctexart}
\usepackage{zhlipsum}
\begin{document}
%zhlipsum第二个可选参数为选取的假文库,默认有6中
\zhlipsum[1-3][name=zhufu] %从鲁迅《祝福》库中选取前1-3段
\zhlipsum[1-3][name=xiangyu] %从司马迁《史记·项羽本纪》库中选取前1-3段
\end{document}

02-从指定假文库中抽取段落.png

自定义假文库

1
2
3
4
5
6
7
8
9
10
11
12
13
\documentclass{ctexart}
\usepackage{zhlipsum}
\begin{document}
\newzhlipsum{chibifu}{ %自定义假文库,假文库名为chibifu,假文库共5段,每段之间使用英文逗号进行分隔
{壬戌之秋,七月既望,苏子与客泛舟游于赤壁之下。清风徐来,水波不兴。举酒属客,诵明月之诗,歌窈窕之章。少焉,月出于东山之上,徘徊于斗牛之间。白露横江,水光接天。纵一苇之所如,凌万顷之茫然。浩浩乎如冯虚御风,而不知其所止;飘飘乎如遗世独立,羽化而登仙。},
{于是饮酒乐甚,扣舷而歌之。歌曰:“桂棹兮兰桨,击空明兮溯流光。渺渺兮予怀,望美人兮天一方。”客有吹洞箫者,倚歌而和之。其声呜呜然,如怨如慕,如泣如诉;余音袅袅,不绝如缕。舞幽壑之潜蛟,泣孤舟之嫠妇。},
{苏子愀然,正襟危坐,而问客曰:“何为其然也?”客曰:“‘月明星稀,乌鹊南飞。’此非曹孟德之诗乎?西望夏口,东望武昌,山川相缪,郁乎苍苍,此非孟德之困于周郎者乎?方其破荆州,下江陵,顺流而东也,舳舻千里,旌旗蔽空,酾酒临江,横槊赋诗,固一世之雄也,而今安在哉?况吾与子渔樵于江渚之上,侣鱼虾而友麋鹿,驾一叶之扁舟,举匏樽以相属。寄蜉蝣于天地,渺沧海之一粟。哀吾生之须臾,羡长江之无穷。挟飞仙以遨游,抱明月而长终。知不可乎骤得,托遗响于悲风。”},
{苏子曰:“客亦知夫水与月乎?逝者如斯,而未尝往也;盈虚者如彼,而卒莫消长也。盖将自其变者而观之,则天地曾不能以一瞬;自其不变者而观之,则物与我皆无尽也,而又何羡乎!且夫天地之间,物各有主,苟非吾之所有,虽一毫而莫取。惟江上之清风,与山间之明月,耳得之而为声,目遇之而成色,取之无禁,用之不竭。是造物者之无尽藏也,而吾与子之所共适。”},
{客喜而笑,洗盏更酌。肴核既尽,杯盘狼籍。相与枕藉乎舟中,不知东方之既白。}
}
\zhlipsum[1-3][name=chibifu] %假文选择自定义的赤壁赋的前3段

\end{document}

03-从自定义的假文库中抽取前3段.png

英文假文

英文假文 blindtext 宏包使用案可参考之前所写文章:Latex 浮动体位置设定 @智朋的个人博客

待续

参考资料

速览

使用 xcolor 宏包可用来方便地调用颜色:
该宏包为我们提供了 \textcolor , \definecolor 两关键命令

1
2
3
\textcolor{red}{Red为xcolor宏包预定义的命令} %修改颜色
%语法:\definecolor{name}{model-list}{spec-list}
\definecolor{Gcolor}{RGB}{66, 134, 243} %定义自定义颜色

宏包预定义的颜色命令

语法

1
\textcolor{colorname}{text} %修改text的颜色

宏包预定义的颜色及命令如下

01-xcolor宏包预定义颜色.png

案例 1 宏包预定的颜色修改字体颜色

1
2
3
4
5
6
7
\documentclass{ctexart}
\usepackage{xcolor}
\begin{document}
\textcolor{red}{Red为xcolor宏包预定义的命令} %将字体颜色修改为红色

\textcolor{pink}{Pink也为xcolor宏包预定义的命令}
\end{document}

02-xcolor宏包预定义的颜色命令.png

案例 2 设置颜色透明度

1
2
3
4
5
6
7
\documentclass{ctexart}
\usepackage{xcolor}
\begin{document}
\textcolor{red}{红色文字}

\textcolor{red!50}{透明度为50的红色}
\end{document}

03-调节颜色透明度.png

  • 红色文字字体颜色 RGB (255,0,0)
  • 透明度为 50% 的红色字体颜色 RGB (255,128,128)

案例 3 混合色

1
2
3
4
5
6
7
8
9
\documentclass{ctexart}
\usepackage{xcolor}
\begin{document}
\textcolor{red}{红色文字}

\textcolor{red!50!black}{50\%的红色 + 50\%的黑色}

\textcolor{red!50!white}{50\%的红色 + 50\%的白色}
\end{document}

091-混合色语法.png

  • red!50!black:即 50% 的红色(255,0,0)混合 50% 的黑色(0,0,0),最终得到(128,0,0)
  • 同理,red!50!white 最终得到(255,128,128)

定义新的颜色命令

语法

1
2
3
4
5
6
%语法:\definecolor{name}{model-list}{spec-list}
%语法:\definecolor{颜色}{颜色模式}{参数序列}
%RGB实例如下
\definecolor{keywordcolor}{RGB}{34,34,250} %定义新的颜色命令
%HTML实例如下
\definecolor{main}{HTML}{ff8080} %注意HTML是大写,后面的参数序列不跟“#”

语法中的 model-list 可以是我们常使用的 RGB、CMYK、HSV 等(整合了 12 种色彩模式 rgb, cmy, cmyk, hsb, Hsb, tHsb, gray, RGB, HTML, HSB, Gray, wave)。比如说 OFFICE 系列的软件在调节颜色时,通常会提供 RGB 和 HSV 两种颜色模式

05-PPT当中的颜色模式.png

案例 4:定义新的颜色命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
\documentclass{ctexart}
\usepackage{xcolor}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\includegraphics[width=5in]{figs/Google-logo}
\end{figure}
%语法:\definecolor{name}{model-list}{spec-list}
\definecolor{Gcolor}{RGB}{66, 134, 243}
\definecolor{Lcolor}{RGB}{52, 170, 82}
\centering
\textcolor{Gcolor}{这是Google logo中G的颜色}

\textcolor{Lcolor}{这是Google logo中L的颜色}
\end{document}

04-自定义颜色命令.png

拓展应用 彩色表格

xcolor 宏包的 \rowcolors 命令 (需要 colortbl 宏包的支持),可以分别设置表格奇偶行的背景颜色

语法

1
2
%语法:{起始行}{奇数行颜色}{偶数行颜色},如一下示例
\rowcolors{1}{White}{Lavender}

\hiderowcolors 命令是用来暂停显示前面设置的奇偶行颜色,否则后面的其他表格会继续显示颜色。另一个命令 \showrowcolors 可以用来重新激活奇偶行颜色设置。

案例 5:彩色表格

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
\documentclass{ctexart}
\usepackage[table]{xcolor} %提供rowcolor命令
\begin{document}
\definecolor{mygray}{RGB}{245, 245, 245} %自定义的一种灰色颜色命令
\begin{table}[!ht]
\centering
\rowcolors{1}{white}{mygray} %彩色表格,从第一行开始,奇偶行背景色分别为白色和自定义的灰色(注意颜色名称的大小写不要写错)
\begin{tabular}{cc}
\hline
文献类型标识 & 载体类型标识 \\
\hline
\verb|[DB/OL]| & 联机网上数据库 (database online) \\
\verb|[DB/MT]| & 磁带数据库 (database on magnetic tape) \\
\verb|[M/CD]| & 光盘图书 (monograph on CD-ROM) \\
\verb|[CP/DK]| & 磁盘软件 (computer program on disk) \\
\verb|[J/OL]| & 网上期刊 (serial online) \\
\verb|[EB/OL]| & 网上电子公告 (electronic bulletin board online)\\
\hline
\hiderowcolors %暂停使用奇偶行颜色设定,防止对后续表格的背景色产生影响,后续如果想要开启,可以使用\showrowcolors来重新激活奇偶行颜色设置
\end{tabular}
\end{table}
\end{document}

09-正常表格以及彩色表格.png

需要注意的地方

  1. \usepackage[table]{xcolor} 如果仅使用 \usepackage{xcolor},无法识别 \rowcolors\hiderowcolors` 等命令
  2. \hiderowcolors 写在 tabular 环境内,否则报 Misplaced \noalign

关于第 2 点的报错,可参考:

08-彩色表格报错.png

主要参考资料

待续