BIThesis 模板中 algorithm2e 环境空隙调整方法
问题描述
在使用 BIThesis 模板撰写学术论文时,部分用户反馈 algorithm2e 宏包提供的 algorithm 环境前后空隙不足,导致算法伪代码与正文内容过于紧密,影响文档美观性和可读性。
解决方案分析
algorithm2e 宏包默认使用 \smallskip 作为算法环境前后的间距,这在某些情况下显得过于紧凑。针对这一问题,我们提供了两种调整方案:
方案一:全局设置间距
通过 \SetAlgoSkip 命令可以全局修改所有算法环境的间距:
\usepackage[ruled, algochapter]{algorithm2e}
\SetAlgoSkip{bigskip} % 使用更大的间距
这种方法简单直接,但缺点是只能选择预设的间距命令(如 smallskip、medskip、bigskip 等),无法精确控制具体数值。
方案二:自定义精确间距
如果需要更精确的控制,可以直接重定义 \@algoskip 命令:
\usepackage[ruled, algochapter]{algorithm2e}
\makeatletter
\renewcommand{\@algoskip}{\vspace{1em}} % 设置1em的精确间距
\makeatother
这种方法灵活性更高,可以设置任意大小的间距值。
技术原理
在 algorithm2e 宏包的实现中,算法环境的间距由 \@algoskip 命令控制,其默认定义为 \smallskip。宏包提供了 \SetAlgoSkip 命令来修改这一设置,其内部实现实际上是重定义了 \@algoskip 命令。
最佳实践建议
- 对于大多数情况,使用
\SetAlgoSkip{bigskip}即可获得较好的视觉效果 - 如需与图表环境保持一致的间距,建议测量图表环境的实际间距值,然后使用自定义间距方法设置相同值
- 在文档类或样式文件中统一设置,确保全文算法环境间距一致
注意事项
- 使用
\makeatletter和\makeatother包裹重定义命令是必要的,因为@是特殊字符 - 间距值不宜过大,以免影响文档的连贯性
- 建议在文档完成前统一调整所有浮动环境的间距,保持风格一致
通过以上方法,用户可以轻松调整 algorithm2e 环境的间距,使算法伪代码在文档中呈现出更专业的排版效果。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



