在 beamer 演示文稿中编写代码

在 beamer 演示文稿中编写代码

我有以下几行代码,我想将其添加到我的 Beamer 演示文稿中。我尝试了下面提到的方法,但失败了。要求它还应显示行号。


1. int main(){
2. printf("hello");
3. return 0;

}

我用的是这个:

\begin{frame}[fragile]
    \semiverbatim{
            1. int main(){
            2. printf("hello");
            3. return 0;
   
    } 
\end{frame}

答案1

您需要一个\begin{frame}[fragile]环境,对于行号,您可以使用listings包,它有许多选项,对于行号,它是numbers=left。您还可以使用\lstinputlisting{yourfile.c}直接输入 C 文件,并且lstautogobble对于根据第一行删除缩进很有用。有关排版 C 代码的更多选项(颜色……),请参阅例如这个答案,我提供了一个非常简单的示例。顺便说一句,下次提供一个完整的(即可编译的)最小工作示例,如下所示:

在此处输入图片描述

\documentclass[]{beamer}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{listings}
\usepackage{lstautogobble} % Provides autogobble, which is useful to remove indentation based on first line

\lstset{ %
  language=C,
  numbers=left,
  numberstyle=\tiny,
  stepnumber=1,
  numbersep=5pt,
  breaklines=true,
  autogobble=true, % Removes indentation based on first line
}

\begin{document}

\begin{frame}[fragile]{Title}
  \begin{center}
    \begin{tabular}{c}
      \begin{lstlisting}
        int main(){
          printf("hello");
          return 0;
        }
      \end{lstlisting}
    \end{tabular}
  \end{center}
\end{frame}

\end{document}

相关内容