Helvetica と Symbol フォントを mathspec と組み合わせる

Helvetica と Symbol フォントを mathspec と組み合わせる

Helvetica と Symbol フォントを組み合わせて、Helvetica がラテン文字を、Symbol がギリシャ文字を処理するようにしたいです。Mathspec と XeLaTeX は、この目的にかなり適していますが、括弧とパーセント記号 (およびその他の可能性のあるもの) を正しく表示できません。たとえば、次のコード

\documentclass[10pt]{article}
\usepackage{mathspec}
\setmainfont{Helvetica}
\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\begin{document}
\Huge This looks right: $L_e$ (\%)

\Huge This looks wrong: $L_e\,(\%)$ 
\end{document}

次の文書が生成されます。

ここに画像の説明を入力してください

(簡単にするために、\setmathsfont(Greek){Symbol}コマンドを省略しました。このコマンドがないと問題が発生します。) 数式モードのときに、XeLaTeX で括弧とパーセント記号に Helvetica を使用するにはどうすればよいでしょうか。

答え1

計算なしでロードfontspec:

\documentclass[10pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{Helvetica}
\usepackage{mathastext}
%\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\begin{document}
\Huge This looks right: $L_e$ (\%)

\Huge This looks wrong: $L_e\,(\%)$ 
\end{document}

ここに画像の説明を入力してください

答え2

カールケーラーとハーバートの助けにより、私は次のような解決策にたどり着きました。

\documentclass[10pt]{article}
\usepackage{mathspec}
\setmathsfont(Digits,Latin)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\setmathsfont(Greek)[Uppercase=Regular,Lowercase=Italic]{Symbol}
\setmainfont{Helvetica}
\usepackage[italic]{mathastext}
\begin{document}
\Huge This looks right: $\delta_e/L_e$ (\%)

\Huge This looks wrong: $\delta_e/L_e\,(\%)$ 
\end{document}

それによって、

ここに画像の説明を入力してください

12 月 28 日にkarlkoeller が提案した時点でこれを試したことはほぼ確実ですmathastextが、たくさんのエラーが発生しました。12 月 28 日から 1 月 1 日の間に、TexLive 2012 から TexLive 2013 に更新したところ、今は動作するようです。パッケージはmathspec2012 年から 2013 年の間に更新されていませんでしたが、mathastextパッケージは 15 回ほど更新されています。おそらく、それらの更新の 1 つで、発生していたエラーが修正されたのでしょう。

他の人に知らせるために、私がより気に入っている別の解決策も共有しようと思いました。XeLaTeX パッケージは良いのですが、上記のような短い文書をタイプセットするには 3 倍近く時間がかかります。また、複雑な Mathematica の数式をタイプセットするときに、Symbol フォントと Helvetica フォントがうまく機能するかどうかはわかりません。代わりに、newtx完全な数学サポートと、サンセリフ フォントの Helvetica クローンを備えたパッケージに落ち着きました。次のコード

\documentclass[10pt]{article}
\usepackage{newtxtext}
\renewcommand*\familydefault{\sfdefault}
\usepackage[italic]{mathastext}
\usepackage{newtxmath}
\begin{document}
\Huge This looks right: $\delta_e/L_e$ (\%)

\Huge This looks wrong: $\delta_e/L_e\,(\%)$ 
\end{document}

生産する、 ここに画像の説明を入力してください

\deltaでは異なりますnewtxが、全体的なスタイルは似ており、Symbol フォントにこだわっているわけではありません。コンピュータ モダン (CM) フォントは使いたくなかっただけです。(私の意見では、CM フォントの線の太さは細すぎます。) 残念ながら、よく調べてみると、newtx数式モードとテキスト モードで括弧が少し異なることがわかりましたが、これは問題ありません。

関連情報