无法将快递纳入 latex beamer 列表中

无法将快递纳入 latex beamer 列表中

我已为我的列表设置了以下内容:

\documentclass[russian,pdf]{beamer}
\mode<presentation>{}

\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage{graphicx, subfig, amsmath, mathtools, lmodern, listings, lipsum, courier}

\definecolor{darkred}{rgb}{0.7, 0, 0}
\definecolor{darkgreen}{rgb}{0, 0.4, 0}
\definecolor{navy}{rgb}{0, 0, 0.5}
\definecolor{purple}{rgb}{0.45, 0, 0.45}
\definecolor{codebg}{rgb}{0.95, 0.95, 0.95}

\lstset{
language=C++,                
basicstyle=\ttfamily,
keywordstyle=\color{navy},
stringstyle=\color{darkred},
commentstyle=\color{darkgreen},
morecomment=[l][\color{purple}]{\#},
backgroundcolor=\color{codebg},
showspaces=false, 
showstringspaces=false,
showtabs=false,
} 

\begin{document}

\section{C++}
\begin{frame}[fragile]
\begin{lstlisting}
    struct employee
    {
        char name [64] ;
        long employee_id;
        float salary;
        char phone[10];
        int office_number;
    };
\end{lstlisting}
\end{frame}

\end{document}

它会产生在此处输入图片描述

但我希望它是 courier 字体。我的 latex 源代码有什么问题?

答案1

将帧的开头更改为:

\begin{frame}[fragile]
\fontencoding{T1}\selectfont
\begin{lstlisting}

如果您必须对许多帧执行此操作,您也可以将这些行添加到前言中:

\usepackage{etoolbox}
\AtBeginEnvironment{lstlisting}{\fontencoding{T1}\selectfont}

或者,您可以使用 进行编译xelatex并加载fontspec包。

在此处输入图片描述

相关内容