我剛剛學會如何將原始程式碼插入到包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
。軟體包指南詳細解釋瞭如何執行此操作,但您也可以透過查看 apposite 標籤找到信息清單在這個網站上。此指令\ttfamily
設定打字機中給定的樣式。