LaTeX 之 shapepar 宏包
记录一个 “无实际意义” 的宏包:shapepar
,宏包名由 “shape” 和 “par” 构成,见名之意,该宏包和形状有关。
由 Donald Arseneau 开发的宏包 shapepar 定义了命令 \shapepar
, 它可以按预定义的形状排版段落。段落的尺寸自动被调整,以使得整个造型中都添满了文本。但是被排版的段落中应不含有显示公式或 \vadjust
内容,因为其中含有 \vspace
命令.
LaTeX 中常见的图文混排的宏包有 picinpar、wrapfigure 和 cutwin 等,它们的功能大致相当,都是实现图表和文字的混排。这里要讲的 shapepar 宏包非常有意思,可以将一段文字排成一些有趣的图案,已经预定义的有 \circlepar
(圆形)、\CDlabel
(CD 光盘)、\heartpar
(心形)、\starpar
(五角形) 等等。下面以 \heartpar
为例。
案例分析
1 | \documentclass{ctexart} |
另外,其他已经预定义好的形状(不太常用的形状),可通过 ∗shape.def
在电脑中搜索,但是需要 include 来引入
拓展应用
宏包作者提供了自定义形状的一些命令,比如如下形状 ,具体请参阅宏包手册,这里暂时没有需求就不做深入研究了。
关于这个自定义形状,有兴趣的同学可自行搜索 ShapePatch by Christian Gollwitzer
参考资料
- Latex 工作室: LaTeX 技巧 163:如何输入特殊形状的段落
- 博客园:用 shapepar 宏包排出心形图案
- shapepar 宏包手册:texdoc shapepar