如何在 Beamer 中為 C++ 原始碼添加語法著色

如何在 Beamer 中為 C++ 原始碼添加語法著色

我剛剛學會如何將原始程式碼插入到包beamerlistings。但是我不知道如何在 C++ 原始程式碼上添加任何語法著色。

我怎麼做?

這是我目前用於原始程式碼插入的程式碼。

\documentclass{beamer}
 \setbeamercovered{transparent}
%\usepackage{pxfonts}
\usepackage{listings}


\begin{document}

\begin{frame}[fragile]
\frametitle{Inserting source code}
  \lstset{language=C++}
\begin{lstlisting}
    #include<stdio.h>
    #include<iostream>
    int main(void)
    {
    printf("Hello World\n");
    return 0;
    }
\end{lstlisting}
\end{frame}
\end{document}

答案1

這是一個突出顯示 C++ 程式碼的範例;兩個框架顯示了採用打字機字體和不採用打字機字體之間的差異:

\documentclass{beamer}
 \setbeamercovered{transparent}
\usepackage{listings}

\begin{document}

% Using typewriter font: \ttfamily inside \lstset
\begin{frame}[fragile]
\frametitle{Inserting source code}
\lstset{language=C++,
                basicstyle=\ttfamily,
                keywordstyle=\color{blue}\ttfamily,
                stringstyle=\color{red}\ttfamily,
                commentstyle=\color{green}\ttfamily,
                morecomment=[l][\color{magenta}]{\#}
}
\begin{lstlisting}
    #include<stdio.h>
    #include<iostream>
    // A comment
    int main(void)
    {
    printf("Hello World\n");
    return 0;
    }
\end{lstlisting}
\end{frame}

\begin{frame}[fragile]
\frametitle{Inserting source code without setting typewriter}
\lstset{language=C++,
                keywordstyle=\color{blue},
                stringstyle=\color{red},
                commentstyle=\color{green},
                morecomment=[l][\color{magenta}]{\#}
}
\begin{lstlisting}
    #include<stdio.h>
    #include<iostream>
    // A comment
    int main(void)
    {
    printf("Hello World\n");
    return 0;
    }
\end{lstlisting}
\end{frame}
\end{document}

在此輸入影像描述

在此輸入影像描述

請注意,使用 . 與 Beamer 或標準文件沒有區別listings。軟體包指南詳細解釋瞭如何執行此操作,但您也可以透過查看 apposite 標籤找到信息清單在這個網站上。此指令\ttfamily設定打字機中給定的樣式。

相關內容