我想使用 来\SetAlFn
更改算法的字体大小,但它似乎根本不起作用。这是我的代码。
\documentclass{article}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage[tight,TABTOPCAP]{subfigure}
\usepackage{amsmath}
\usepackage[noline]{algorithm2e}
\SetAlFnt{\small}
\begin{document}
\begin{minipage}[b]{0.8\linewidth}%
\begin{algorithm}[H]%
\DontPrintSemicolon
\SetNoFillComment
\SetAlFnt{\small\sf}
%\SetCommentSty{tiny}
\SetKwProg{Fn}{Function}{}{end}
\Fn{$u^h \leftarrow $V-cycle($A_h, u_0^h, f_h$)}{
\uIf{$h==h_0$}{\KwRet{$u_h \leftarrow A_h^{-1}f_h $}\tcc*[r]{bottom solve}}
$u^h \leftarrow \text{smooth}(A_h,u_0^h,f_h)$\tcc*[r]{pre-smooth}
$r^h \leftarrow f_h-A_hu^h$\tcc*[r]{residual}
$r^{2h} \leftarrow I_h^{2h}r^h$\tcc*[r]{restriction}
$\delta^{2h} \leftarrow \text{V-cycle}(A_{2h},0,r^{2h})$\tcc*[r]{recursive call}
$u^h \leftarrow u^h + I_{2h}^h\delta^{2h}$\tcc*[r]{interpolation}
$u^h \leftarrow \text{smooth}(A_{2h},u^h,f_h)$\tcc*[r]{post-smooth}
\KwRet{$u^h$}\;
}
\caption{V-cycle}
\end{algorithm}%
\end{minipage}%
\end{document}
答案1
文档元素的样式最好以一致的方式进行。因此,algorithm2e
's\SetAlFnt
在环境启动时发出algorithm
。这就是为什么,当你\SetAlFnt
在算法中途调用时……或者甚至在之后立即调用时\begin{algorithm}
,更改算法字体已经太晚了。
\documentclass{article}
\usepackage{amsmath}
\usepackage[noline]{algorithm2e}
\SetAlFnt{\small\sffamily}
\begin{document}
\begin{algorithm}[H]
\DontPrintSemicolon
\SetNoFillComment
\SetKwProg{Fn}{Function}{}{end}
\Fn{$u^h \leftarrow {}$\textup{\AlFnt V-cycle}($A_h, u_0^h, f_h$)}{
\uIf{$h==h_0$}{\KwRet{$u_h \leftarrow A_h^{-1}f_h $}\tcc*[r]{bottom solve}}
$u^h \leftarrow \text{smooth}(A_h,u_0^h,f_h)$\tcc*[r]{pre-smooth}
$r^h \leftarrow f_h-A_hu^h$\tcc*[r]{residual}
$r^{2h} \leftarrow I_h^{2h}r^h$\tcc*[r]{restriction}
$\delta^{2h} \leftarrow \text{V-cycle}(A_{2h},0,r^{2h})$\tcc*[r]{recursive call}
$u^h \leftarrow u^h + I_{2h}^h\delta^{2h}$\tcc*[r]{interpolation}
$u^h \leftarrow \text{smooth}(A_{2h},u^h,f_h)$\tcc*[r]{post-smooth}
\KwRet{$u^h$}\;
}
\caption{V-cycle}
\end{algorithm}
\end{document}
请注意,只有某些元素符合新设置的衬线字体。这是因为虽然\AlFnt
(基于 定义\SetAlFont
)是在 处发布的\begin{algorithm}
,但每个组件都有自己的一组字体定义(例如\SetKwSty
ey K
ordsw
等)。有关更多详细信息,请参阅部分9.5.3 设置字体标准字体形状和样式(第 27 页)algorithm2e
文档。