C++ ソース コードを Beamer スライドに組み込む方法

C++ ソース コードを Beamer スライドに組み込む方法

重複の可能性あり:
LaTeX ドキュメントで LaTeX コードを表示するにはどうすればよいでしょうか?
Java スタイルのソース コードを Beamer の 1 つのフレームに収めるにはどうすればよいでしょうか?

C++ 形式のカラー ソース コードを Beamer プレゼンテーションに追加するにはどうすればよいですか? これを実行する簡単な方法はありますか?

答え1

パッケージを使用するリストまたは鋳造された。Listings はインストールが簡単です。minted には python が必要で、 を使用しますpygmentsが、多くの場合、より良い結果が得られます。また、fragileで オプションを使用する必要があるframeため、フレームのコンテンツが外部ファイルに書き込まれ、適切に処理されます。これによりコンパイルが遅くなるため、必要がない場合は オプションを使用しないでください。

ただし、ビーマー フレームのスペースは非常に限られているため、1 ページに多くのコードを載せることはできません (実際には載せるべきではありません)。

答え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

もう一つの選択肢は翻訳、具体的には\pygmentコマンドとpygments環境です。minted と同様に、PythonTeX には Python と Pygments が必要です。強調表示された結果は保存されるため、強調表示が必要なコードを変更したときにのみ Python を実行する必要があります。Unicode がサポートされています。

fragileビーマー フレームのオプションを使用する必要があります。

関連情報