如何将 C++ 源代码放入 beamer 幻灯片

如何将 C++ 源代码放入 beamer 幻灯片

可能重复:
如何在 LaTeX 文档中显示 LaTeX 代码?
怎样将 Java 风格的源代码放入 Beamer 的一个框架中?

如何将 C++ 格式和彩色源代码添加到我的 Beamer 演示文稿中?有什么简单的方法可以做到这一点?

答案1

使用包列表或者铸造。Listings 更容易安装,因为 minted 需要 python,它使用pygments,但通常会产生更好的结果。此外,您需要fragile在 上使用选项frame,以便框架的内容写入外部文件并可以正确处理。这会减慢编译速度,因此不要在不需要的地方使用该选项!

但请记住,投影仪框架上的空间非常有限,因此您不能(实际上也不应该)在一页上放置太多代码。

答案2

您可以在环境之前定义逐字部分,frame那么您就不需要该fragile选项了。

\documentclass{beamer}
\usepackage{listings}

\begin{document}

\defverbatim[colored]\lstI{
\begin{lstlisting}[language=C++,basicstyle=\ttfamily,keywordstyle=\color{red}]
int main() {
  // Define variables at the beginning
  // of the block, as in C:
  CStash intStash, stringStash;
  int i;
  char* cp;
  ifstream in;
  string line;
[...]
\end{lstlisting}
}

\begin{frame}{A Listings Demo}{C++}
\lstI
\end{frame}

\end{document}

答案3

另一个选择是PythonTeX,具体来说是\pygment命令和pygments环境。与 minted 一样,PythonTeX 需要 Python 和 Pygments。高亮结果会被保存,因此只有在修改了需要高亮的代码时才需要运行 Python。支持 Unicode。

您将需要使用fragile投影仪框架的选项。

相关内容