如何在 MetaUML 中使用德语变音符号

如何在 MetaUML 中使用德语变音符号

我有以下文件:

metauml文件.mp:

input metauml;
beginfig(1);
    Class.Benutzer("Benutzer")
           () 
           ("+üben(): void");

    drawObjects(Benutzer);
endfig;
end

latex文件.tex:

\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc} % this is needed for german umlauts
\usepackage[ngerman]{babel} % this is needed for german umlauts
\usepackage[T1]{fontenc}    % this is needed for correct output of umlauts in pdf
\usepackage[margin=2.5cm]{geometry} %layout

% The following is needed in order to make the code compatible
% with both latex/dvips and pdflatex.
\ifx\pdftexversion\undefined
\usepackage[dvips]{graphicx}
\else
\usepackage[pdftex]{graphicx}
\DeclareGraphicsRule{*}{mps}{*}{}
\fi

\begin{document}
\includegraphics{metaumlfile.1}
\end{document}

生成文件:

make:
    mpost metaumlfile.mp
    pdflatex latexfile.tex -output-format=pdf
    pdflatex latexfile.tex -output-format=pdf
    make clean

clean:
    rm -rf  $(TARGET) *.class *.html *.log *.aux *.out *.glo *.glg *.gls *.ist *.xdy *.1 *.toc

(我希望这仍然有效。我有一个更大的文件并试图生成一个最小的示例。当我调用 make 时,我的大文件会进行编译。)

metaumlfile.mp 中有一个名为“umlaut”的特殊字符。我需要做哪些更改才能使其在我的 PDF 文件中正确显示?(我可以在我的 latexfile.tex 中使用 umlaut。)

答案1

这显然是一个编码问题;MetaUML 并不真正理解 TeX 输入,而且根本不喜欢 UTF-8。

如果将.mp文件保存为 Latin-1,则特殊字符可能会被正确呈现,因为 Latin-1 和 MetaUML 使用的字体共享许多插槽(ü)。

以下是以 Latin-1 编码的 MetaUML 文件的结果:

在此处输入图片描述

相关内容