Как добавить подсветку синтаксиса в исходный код C++ в Beamer

Как добавить подсветку синтаксиса в исходный код C++ в Beamer

Я только что узнал, как вставить исходный код в beamerпакет listings. Однако я не знаю, как добавить какую-либо подсветку синтаксиса в исходный код 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. Руководство по пакету подробно объясняет, как это сделать, но вы также можете найти информацию, посмотрев на соответствующий теглистингна этом сайте. Команда \ttfamilyустанавливает заданный стиль в пишущей машинке.

Связанный контент