我正在使用float
包来获取带有规则的浮动环境。我想调整ruled
样式中规则的高度以适应包的浮动。也就是说,我希望底部规则与顶部规则一样粗(就像在booktabs
表格中一样)。
我已经使用低级 TeX 命令进行了一些自定义,使浮点数后面带有点。但我无法对规则高度使用类似的技巧。
我的 MWE 如下。
\documentclass{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{float}
\floatstyle{ruled}
\floatname{AlgoEnv}{Algorithm}
\newfloat{AlgoEnv}{htbp}{loa}[section]
\makeatletter
\renewcommand\floatc@ruled[2]{{\@fs@cfont #1.} #2\par}
% doesn't seem to work
\def\@fs@post{\hrule height.8pt depth0pt \kern2pt}
\makeatother
\begin{document}
\section{First}
\begin{AlgoEnv}
\caption{blabla}
description
\end{AlgoEnv}
\end{document}
结果如下。
如您所见,底线与中间线相似,而顶部线更粗。
答案1
您必须\floatstyle{ruled}
在应用样式之前修补宏定义:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{etoolbox}
\usepackage{float}
\makeatletter
\patchcmd{\fs@ruled}
{\def\@fs@post{\kern2pt\hrule\relax}}
{\def\@fs@post{\kern2pt\hrule height 0pt depth .8pt\relax}}
{}{}
\makeatother
\floatstyle{ruled}
\floatname{AlgoEnv}{Algorithm}
\newfloat{AlgoEnv}{htbp}{loa}[section]
\begin{document}
\section{First}
\begin{AlgoEnv}
\caption{blabla}
description
\end{AlgoEnv}
\end{document}