在LaTeX中,常用**listings**宏包实现源代码语法高亮排版。另一个类似的是**minted**宏包,该宏包借助于Python的**Pygments**工具包,能够更加灵活地实现不同语言、不同配色方案的源代码语法高亮排版。 ## 软件安装 **minted**宏包已包含在TeXLive发行版中(其它发行版请自查),无需再独立安装。但要使用**minted**宏包,必须有**Pyt...
在插图排版中,难免会遇到一些**异形排列**的情况,如:3个图排成两列,左列或是右列按上下排列、两个不同尺寸的图水平两列排列,但要求图注水平高低对齐。类似这些异形排列,当然可以使用minipage等宏包,通过适当布置实现。但使用floatrow宏包,也可以实现类似排版需求。 *注意*:以下所有示例需要在导言区添加如下3个宏包引用。 ```tex \\usepackage{graphicx...
由于工作需要,经常需要在各类文档中绘制**传统程序流程图**。流程图当然可以在Visio、亿图等工具进行绘制,截图(**位图,不推荐**)或是导出为PDF(**矢量图,推荐**)后,再通过graphicx宏包的`\includegraphics`命令插入到LaTeX实现排版。这是一种简单直接的方法,但这种方法会存在如下问题: - 需要额外的软件支持,降低了文档的独立性。 - 字体、字号无...
在使用Beamer宏包制作Slides(演示文稿)时,可以使用overlay命令控制不同页面中的需要显示内容,当连续播放这些页面时,就可以生成动画效果。 但类似`\\visible`、`\\only`这样的overlay命令一方面对目标明暗效果控制方式单一,另一方面是无法保持所有绘制对象在所有页面有效,因此,无法进行很好的坐标计算等操作。 今天在[Mindmap tikzpicture...
在使用TiKZ绘图时,往往需要大量的重复操作,此时,使用foreach循环操作会简化绘制代码,提高绘图代码的编写效率,并方便后期的代码维护工作。 在此,以一个C语言中常见的用指针数组实现字符串排序的示意图绘制为例,说明foreach循环及foreach循环嵌套的操作。 设有如下待排序的字符型指针数组及其初始化值: ```c char *planets[] = {Mercury, V...