esta respuesta
escalar objetos de látex
recomienda utilizar \resizebox
para escalar objetos de látex.
Sin embargo, este enfoque falla al cambiar la escala de un listado en Beamer:
\documentclass{beamer}
\usepackage{listings}
\begin{document}
\begin{frame}[fragile]
\resizebox{\textwidth}{!}{%
\begin{lstlisting}
some -program --code "Not fitting into page"
\end{lstlisting}
}
\end{frame}
\end{document}
El error que uno recibe es
! Argument of \lst@next has an extra }.
¿Cómo escalar un listado en Beamer?
Respuesta1
Como se dijo en el comentario, no se pueden pasar cosas palabra por palabra como argumentos a una macro. Pero listings
puedes cambiar fácilmente el tamaño de fuente.
\begin{frame}[fragile]
\begin{lstlisting}
some -program --code "Not fitting into page"
\end{lstlisting}
\begin{lstlisting}[basicstyle=\small]
some -program --code "Not fitting into page"
\end{lstlisting}
\begin{lstlisting}[basicstyle=\footnotesize]
some -program --code "Not fitting into page"
\end{lstlisting}
\begin{lstlisting}[basicstyle=\fontsize{8}{9}\selectfont]
some -program --code "Not fitting into page"
\end{lstlisting}
\end{frame}
Si quieres cambiarlo por el documento o por un marco completo puedes utilizar lstset
.
\begin{frame}[fragile]
\lstset{basicstyle=\small}
\begin{lstlisting}
some -program --code "Not fitting into page"
\end{lstlisting}
\begin{lstlisting}[basicstyle=\normalsize]
some -program --code "Not fitting into page"
\end{lstlisting}
\end{frame}