Overleaf에서 matlab-prettifier를 사용하면 GBP 기호가 표시되지 않습니다. 이 문제를 어떻게 해결합니까?

Overleaf에서 matlab-prettifier를 사용하면 GBP 기호가 표시되지 않습니다. 이 문제를 어떻게 해결합니까?

MATLAB 코드의 축 레이블 중 하나에 £ 기호를 사용했지만 컴파일러에 표시되지 않습니다.

내 LaTeX 코드는 다음과 같습니다

\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}

\title{BENG0019: Engineering Mathematics in Finance \\[10pt] \textbf{Assignment 2}}
\author{Michael Dodman 18020495}
\date{}

\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{titling}
\setlength{\droptitle}{-4em}

\usepackage{parskip}

\usepackage{geometry}
\geometry{portrait, margin=0.7in}

\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{18020495}
\lhead{Michael Dodman}
\cfoot{Page \thepage}
\renewcommand{\headrulewidth}{1pt}
\renewcommand{\footrulewidth}{1pt}
\setlength{\headheight}{14pt}

\UseRawInputEncoding
%\usepackage[framed,numbered,autolinebreaks]{mcode}

\usepackage[framed,numbered]{matlab-prettifier}
\lstset{
  style      = Matlab-editor,
  basicstyle = \fontfamily{pcr}\selectfont\footnotesize, % if you want to use Courier
}



\begin{document}
\maketitle \thispagestyle{fancy}

\newpage \section*{Appendix A}
\begin{lstlisting}[style=Matlab-editor]
% Input X data into a 1 x 10 array
x = [85 105 122 143 162 182 203 224 242 262];

% Input each column of Y data into a 1 x 10 array of arrays
y = {[55 62 61 73 76]; [64 72 73 82 87 88]; [79 84 90 94 99]; [80 93 95 103 105 113 115]; [102 107 110 115 113 125]; [110 115 120 130 132 140]; [120 136 140 144 143]; [135 137 140 152 152 160 162]; [137 145 155 164 174 189]; [152 155 173 171 182 182 192]};

% Plotting each column of Y data individually in turn,in a  for loop and
% adding to the existing graph. Plotting filled circles, size 11pt. 
% For loop ends when all data is plotted.
for i = 1:numel(x)
    scatter(ones(1,numel(y{i}))*x(i), y{i}, 11,'filled', 'o' )
    hold on
end

% Adding a grid and axis labels for clarity
grid on
xlabel('Weekly Income/ \pounds ')
ylabel('Weekly Consumption Expenditure/ \pounds ')
\end{lstlisting}

\newpage \section*{Appendix B}

\end{document}

그러나 출력은 다음과 같습니다.

여기에 이미지 설명을 입력하세요

보시다시피 그냥 \pounds표시되지 않나요?

도움이 필요하세요?

로그 파일 링크:

https://drive.google.com/file/d/1xCegXUrg_OhAPhvr1NvznKztweGGUuZI/view?usp=sharing

답변1

(저는 또 다른 Overleaf 지원 직원입니다)

출력 PDF의 목록이 표시되기를 원한다는 것을 올바르게 이해하고 있습니까?£ ~ 아니다 \pounds말 그대로? 여기에 코드를 작성한 방식은 \pounds.

£당신 의lstlistings 실제로 다음과 유사한 시나리오가 있습니다.목록 목록에서 UTF8을 설정하는 방법은 무엇입니까? (오류 수신). 세 가지 선택이 있습니다:

Escape-to-LaTeX\pounds

LaTeX 명령으로 해석 listings되도록 패키지의 "이스케이프" 메커니즘을 사용합니다 . \pounds(구문 강조 표시가 아닐 수도 있습니다)

%% For escapechar, choose a character that's not used in your code snippet! 
\begin{lstlisting}[style=Matlab-editor,escapechar=|]
xlabel('Weekly Income/ |\pounds|')
\end{lstlisting}

"읽을 수 있는" £ 거리; 그런 다음 £를 직접 쓰세요

이 접근 방식을 listings사용 \pounds하면 £.

\begin{lstlisting}[style=Matlab-editor,
  extendedchars,literate={£}{{\pounds}}1]
xlabel('Weekly Income/ £')
\end{lstlisting}

XeLaTeX 또는 LuaLaTeX로 컴파일하십시오. £를 직접 쓰세요

XeLaTeX 또는 LuaLaTeX로 컴파일하도록 프로젝트를 설정합니다(Overleaf에서는 파일 트리 메뉴 위의 메뉴 아이콘을 클릭하고 "컴파일러" 설정을 변경합니다). 이 컴파일러는 기본적으로 UTF-8을 처리합니다. 그러면 이것이 바로 작동할 것입니다:

\begin{lstlisting}[style=Matlab-editor]
xlabel('Weekly Income/ £')
\end{lstlisting}

위 세 가지 접근 방식의 샘플 출력은 다음과 같습니다.

이스케이프를 사용하여 다양한 출력; "읽기"; 및 XeLaTeX/LuaLaTeX는 목록 목록에 £ 기호를 포함합니다.

관련 정보