
私の文書では、数式以外のすべてにサンセリフ フォントを使用しています。パッケージ\EUR
で提供されているマクロを変更して、数字 (および記号?) をセリフ フォントで印刷するeurosym
にはどうすればよいでしょうか\EUR{1234}
?
ムウェ
\documentclass[a4paper]{article}
\usepackage{eurosym}
\renewcommand{\familydefault}{\sfdefault}
\begin{document}
I'm just a test line \EUR{12345}. % I want this to be serif font...
I'm just a test line \euro \(12345\). % ...like this!
\end{document}
スクリーンショット
答え1
プリアンブルでコマンドを再定義して、Roman フォント ファミリ ( \rmfamily
) を挿入できます。
\documentclass[a4paper]{article}
\usepackage{eurosym}
\renewcommand{\familydefault}{\sfdefault}
\makeatletter
%% from eurosym.sty
\def\EUR#1{{\rmfamily\if@EURleft\euro\,\fi#1\if@EURleft\else\,\euro\fi}}
\makeatother
\begin{document}
I'm just a test line \EUR{12345}. % ...like this!
\end{document}
\rmEUR
または、デフォルトのコマンドを失わないように、新しいコマンドを定義することもできます。
答え2
をロードする代わりにeurosym
、をロードtextcomp
して コマンドを使用する\texteuro
か、単に € と入力することができます。現在の 8 ビット レガシー フォントにその記号がある場合は (最近の TeX ディストリビューションのフォントのほとんどに含まれています)、その記号が使用されます。そうでない場合は、パッケージは と を使用してそれを偽装しようとしC
ます=
。
最新の TeX エンジンを使用すると、fontspec
Unicode 文字を読み込んで使用できます。この\texteuro
コマンドは下位互換性のために引き続き機能します。2019 年現在でも最新のフォントをサポートしていない出版社はごくわずかです。
次のコマンドは、自分自身を定義するのに十分役立つかもしれません\EUR
:
\documentclass{article}
\usepackage{fontspec} % Or:
%\usepackage[T1]{fontenc}
%\usepackage{textcomp}
%\usepackage[utf8]{inputenc}
\usepackage{parskip} % Removes the paragraph indentation.
\DeclareRobustCommand\EUR[1]{€\thinspace #1}
\begin{document}
\EUR{10} \textbf{\EUR 10} \textit{\EUR{10} \textbf{\EUR{10}}} \\
\textsf{\EUR{10} \textbf{\EUR 10} \textit{\EUR{10} \textbf{\EUR{10}}}}
\end{document}
これは、現在のフォントのユーロ記号を使用し、その後に細い改行なしのスペースが続きます。金額の後に記号を配置するというドイツの慣例を使用する場合は、そのようにしてください。 ( #1\thinspace €
) 同じドキュメント内で慣例を切り替える場合は、より複雑になります。