Я готовлю презентацию и использую шаблон Beamer. Мне нужно увеличить размер шрифта определенного алгоритма (это не глобальное изменение). Код Latex:
\begin{frame}{Serial Breadth-First Search}
\begin{algorithm}[H]
\begin{algorithmic}[1]
\Require Graph G, Node root
\Worklist $wl$ = \{ root \};
\State root.level = 0;
\While{($wl \neq \emptyset$)}
\State $u = DEQUEUE(wl)$;
\ForEach{($v \in Vertices(G)$ such that $(u, v) \in Edges(G)$)} \{
\hspace{.3cm} \textit{// Neighbors of u}
\If{(v.level $>$ u.level + 1)} \{
\State v.level = u.level + 1;
\State $ENQUEUE(wl, v)$;
\EndIf
\EndFor \State \} \}
\EndWhile \State \}
\end{algorithmic}
\end{algorithm}
\end{frame}
Я не знаю, как это сделать. Может кто-нибудь мне помочь? Спасибо заранее.
решение1
Чтобы изменить размер шрифта для определенного кадра, вы можете выполнить любую из команд изменения размера шрифта в начале кадра (аналогично тому, что обсуждается вКак использовать определенный шрифт для небольшого фрагмента текста в документе?). Если вам интересен конкретный размер, см.Какой размер шрифта в пунктах (pt) \Large и т. д.?
Ниже я воссоздал вашу настройку.безизменение размера шрифта, так как алгоритм не вписался бы иначе. Однако я указал, где вы можете разместить команду размера шрифта. Другие изменения включают переопределение способа функционирования структур управления — похоже, вы ищете группировку {
... }
для ограничения области действия.
\documentclass{beamer}
\usepackage{algorithm,algpseudocode}
\algrenewtext{For}[1]{\algorithmicfor\ (#1)\ \{}
\algrenewtext{EndFor}{\}}
\algrenewtext{If}[1]{\algorithmicif\ (#1)\ \algorithmicthen\ \{}
\algrenewtext{EndIf}{\}}
\algrenewtext{While}[1]{\algorithmicwhile\ (#1)\ \algorithmicdo\ \{}
\algrenewtext{EndWhile}{\}}
\algnewcommand{\Worklist}{\item[\textbf{Worklist:}]}
\begin{document}
\begin{frame}{Serial Breadth-First Search}
% \tiny \scriptsize \footnotesize \small % <------ make font smaller
% \normalsize % <--------------------------------- normal font size
% \large \Large \LARGE \Huge % <------------------ make font larger
\begin{algorithmic}[1]
\Require Graph G, Node root
\Worklist $wl$ = \{ root \};
\State root.level = 0;
\While{$wl \neq \emptyset$}
\State $u = DEQUEUE(wl)$;
\For{$v \in Vertices(G)$ such that $(u, v) \in Edges(G)$}
\hspace{.3cm} \textit{// Neighbors of u}
\If{v.level $>$ u.level + 1}
\State v.level = u.level + 1;
\State $ENQUEUE(wl, v)$;
\EndIf
\EndFor
\EndWhile
\end{algorithmic}
\end{frame}
\end{document}