在 LaTeX 中实现一个简易的进度条

进度条是很有用的工具。它可以表示 slides 放映的进度,也可以表示某种技能的熟练度。特别地,在制作简历时,使用「精通」、「熟练」之类的词就不如用一个进度条给所有技能一个统一的标准去衡量。不仅美观,而且直观。

使用 calc 宏包搭配 xcolor 宏包,我们就能用 TeX 自带的标尺来绘制进度条了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
\documentclass{ctexart}
\usepackage{xcolor}
\usepackage{calc}

\definecolor{color1}{rgb}{0.22,0.45,0.70} % light blue
\definecolor{color2}{rgb}{0.45,0.45,0.45} % dark grey

\newcommand{\progressbar}[2][2cm]{%
\textcolor{color1}{\rule{#1 * \real{#2} / 100}{1.5ex}}%
\textcolor{color2!15}{\rule{#1 - #1 * \real{#2} / 100}{1.5ex}}}

\begin{document}
Office 三件套 \hfill \progressbar{70}

LaTeX \hfill \progressbar{90}
\end{document}

这里,\rule 命令用来绘制标尺——可以理解为色块。它的第一个参数是宽度,第二个参数是高度。两个标尺分别用两种颜色表示「熟练」和「不熟练」,或者「完成」和「未完成」的部分。两个标尺的宽度利用了 calc 宏包提供的功能进行计算。

效果如下。


您的鼓励是我写作最大的动力

俗话说,投资效率是最好的投资。 如果您感觉我的文章质量不错,读后收获很大,预计能为您提高 10% 的工作效率,不妨小额捐助我一下,让我有动力继续写出更多好文章。


撰写评论

写了这么多年博客,收到的优秀评论少之又少。在这个属于 SNS 的时代也并不缺少向作者反馈的渠道。因此,如果你希望撰写评论,请发邮件至我的邮箱并注明文章标题,我会挑选对读者有价值的评论附加到文章末尾。