algorithm2e 和 Beamer - 如何用较小的字体使算法更宽?

algorithm2e 和 Beamer - 如何用较小的字体使算法更宽?

我想让文档algorithm2e中的环境更宽beamer。事实上,我必须让你\scalebox看到我的所有算法。有没有办法让算法更宽,字体比标准文本更小 不使用比例尺盒? 我的 M(仅仅不是)WE 尺寸看起来很适合我。

输出

在此处输入图片描述

M(仅仅不是)WE

\documentclass{beamer}
    \usepackage[utf8]{inputenc}

    \usepackage[french]{babel}

    \usepackage[french, lined]{algorithm2e}

    \usepackage{beamerthemesplit}


\begin{document}

\frame{
    \frametitle{Premier algorithme}

\scalebox{0.65}{
\begin{algorithm}[H]
    \Begin{
        \ForEach{Case $C$ de la grille $G$}{
            \If{$| poss(C) | \geq 2$}{
                \ForEach{$p \in poss(C)$}{
                    $isole \leftarrow Vrai$
                    \\
                    \ForEach{Bloc $B$ contenant la case $C$}{
                        \ForEach{Case $C_B \neq C$ du bloc $B$}{
                            \If{$p \in poss(C_B)$}{
                                $isole \leftarrow Faux$
                                \\
                                Ne plus tester d'autres cases $C_B$.
                            }
                        }
                        \If{$isole = Vrai$}{
                            $g_{ij} \leftarrow \{ p \}$ où $(i,j) = coord(C)$
                            \\
                            $G \leftarrow \texttt{MettreAJour}(G)$
                            \\
                            Ne plus tester les blocs $B$ contenant $C$
                        }
                    }
                    \If{$isole = Vrai$}{
                        Ne plus tester les possibilités restantes de la case $C$
                    }
                }
            }
        }
        \Return $G$
    }
\end{algorithm}
}   
}

\end{document}

答案1

这里的问题很明显...:)

您正在将常规允许的算法缩小\textwidth到其原始大小的 65%。由于此缩放已完成设置算法时,传统的换行符仍然存在,使得算法看起来像是在右侧“缩短”了。

这是算法的缩写版本,显示了传统的换行符:

在此处输入图片描述

以下是更新内容,其中算法如下第一的设置minipage宽度为 的框1.53846\textwidth,结果\scalebox{0.65}为 的框\textwidth(即 1.53846 x 0.65 ~ 1):

在此处输入图片描述

\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage[lined]{algorithm2e}
\usepackage{beamerthemesplit}
\begin{document}

\begin{frame}
  \frametitle{Premier algorithme}

  \scalebox{0.65}{%
  \begin{algorithm}[H]
    \Begin{
      \ForEach{Case $C$ de la grille $G$}{
        \If{$| poss(C) | \geq 2$}{
          \ForEach{$p \in poss(C)$}{
            $isole \leftarrow Vrai$
            \If{$isole = Vrai$}{
              Ne plus tester les possibilités restantes de la case $C$
            }
          }
        }
      }
      \Return $G$
    }
  \end{algorithm}}
\end{frame}   

\begin{frame}
  \frametitle{Premier algorithme}

  \scalebox{0.65}{\begin{minipage}{1.53846\textwidth}
  \begin{algorithm}[H]
    \Begin{
      \ForEach{Case $C$ de la grille $G$}{
        \If{$| poss(C) | \geq 2$}{
          \ForEach{$p \in poss(C)$}{
            $isole \leftarrow Vrai$
            \If{$isole = Vrai$}{
              Ne plus tester les possibilités restantes de la case $C$
            }
          }
        }
      }
      \Return $G$
    }
  \end{algorithm}%
  \end{minipage}}
\end{frame}   

\end{document}

如果您希望保留算法的自然外观而不使用\scaleboxalgorithm2e提供\SetAlFnt{<font>}您可以为整个算法设置字体大小(或其他字体格式选项)的位置。例如,\SetAlFnt{\footnotesize}将字体大小减小为\footnotesize

相关内容