Metapost:如何在标签内插入重音字母

Metapost:如何在标签内插入重音字母

我需要在 matapost 代码的标签内插入重音字母 é、è、à。我该怎么做

注:我使用pdflatex --shell-escape

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{mpgraphics}

\begin{document}

\begin{mpdisplay}
 pair A;
    A := (0,0);
    draw A withpen pencircle scaled 4bp;
    label.lft(btex  café  etex, A);
    label.rt (btex algèbre  etex, A);
\end{mpdisplay}

\end{document}

在此处输入图片描述

答案1

您必须告诉 Metapost 您正在使用 UTF-8 和 T1:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{mpgraphics}

\begin{ltxpreamble}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\end{ltxpreamble}

\begin{document}

\begin{mpdisplay}
 pair A;
    A := (0,0);
    draw A withpen pencircle scaled 4bp;
    label.lft(btex \strut café  etex, A);
    label.rt (btex \strut algèbre  etex, A);
\end{mpdisplay}

\end{document}

在此处输入图片描述

有了gmp

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[shellescape,latex]{gmp}

\usempxpackage[T1]{fontenc}
\usempxpackage[utf8]{inputenc}

\begin{document}

\begin{mpost}
 pair A;
    A := (0,0);
    draw A withpen pencircle scaled 4bp;
    label.lft(\btex \strut café  etex, A);
    label.rt (\btex \strut algèbre  etex, A);
\end{mpost}

\end{document}

答案2

我建议使用 LuaTeX。使用正确映射的字体(通过加载)时,您可以开箱即用地获得 UTF-8 支持fontspec。此外,LuaTeX 有一个内置的 Metapost 处理器,它消除了 shell 转义的必要性。您必须luamplib为此加载。也许还有其他我不知道的更高级的软件包。

\documentclass{article}
\usepackage{fontspec}
\usepackage{luamplib}
% for convenience
\everymplib{verbatimtex \leavevmode etex; beginfig(0);}
\everyendmplib{endfig;}

\begin{document}

\begin{mplibcode}
  pair A;
  A := (0,0);
  draw A withpen pencircle scaled 4bp;
  label.lft(btex  café  etex, A);
  label.rt (btex algèbre  etex, A);
\end{mplibcode}

\end{document}

在此处输入图片描述


或者直接使用 ConTeXt(输出相同)。多亏了 Metafun,你甚至不需要烦人的btex .. etex,而只需使用引号即可。

\starttext
\startMPcode
  pair A;
  A := (0,0);
  draw A withpen pencircle scaled 4bp;
  label.lft("café", A);
  label.rt ("algèbre", A);
\stopMPcode
\stoptext

相关内容