bmパッケージを使用して数学モードで太字の数字を作成する

数学モードで太字の数字を作成するのに問題があります。 \mathbf{}コマンドはmathptmxパッケージで機能し、数学モードの数字のように見えるが太字の太字の数字を生成しました。次に、newtxmathパッケージをbmと一緒に使用し始めましたが、今では使いたくないように見えます。

mathbf{1}は、番号1のように見えますが、テキストモード1のように見えるシンボルを生成します。\bm{}および\boldsymbolは機能しません。これが

$\bm{1}$\\ $\boldsymbol{1}$\\ $\mathbf{1}$\\ \textbf{1} 

"が低いGeorgiaフォントを使用しています"の数字なので、数学モードとテキストモードの違いを明確に区別できます。

この問題の解決策はありますか?

完全なコードは次のとおりです(コンパイルするには Lua または Xe LaTexが必要です):

\documentclass[10pt]{article} \usepackage{newtxmath} \usepackage{bm} \usepackage{polyglossia} \defaultfontfeatures{Ligatures=TeX} \setmainfont{Georgia} \newfontfamily\cyrillicfont{Georgia} \setmainlanguage{russian} \begin{document} \noindent $\bm{1}$\\ $\boldsymbol{1}$\\ $\mathbf{1}$\\ \textbf{1} \end{document} 

UPDATE:別のPCでファイルをコンパイルすると、ようやく機能しました。これは奇妙なことです。 TexLive更新パッケージとコンパイラは自動的に作成されるので、バージョンの問題ではないようです。

誰かがここで何が起こっているのか説明してくれるといいですね。

コメント

  • texliveはtlmgr updateを実行した場合にのみ更新され、\listfilesをに追加できます。プリアンブルを文書化し、各ログの最後にあるパッケージバージョンを比較します。 (たとえば、昨年はbmにいくつかの更新があり、luatexでの破損が少し少なくなりました)

回答

fontspecをロードするpolyglossiaをロードし、OpenTypeフォントを使用しています。これは、レガシーパッケージbmと互換性がありません。

1つの解決策は次のとおりです。

\usepackage{unicode-math} \defaultfontfeatures{ Ligatures=TeX, Scale=MatchLowercase } \setmathfont{TeX Gyre Termes Math} % Or another math font \setmathfont{Georgia}[range=up] \setmathfont{Georgia Italic}[range=it] \setmathfont{Georgia Bold}[range=bfup] \setmathfont{Georgia Bold Italic}[range=bfit] 

これにより、\mathbf{1}または\symbf{1}を使用できるようになります。数学モードの単語に\mathbfを使用したことがない場合は、オプション\usepackage[mathbf=sym]{unicode-math}を使用して、 \symbfの同義語。理論的には、これにより、テキストフォントではなく、数学フォントから太字の英数字記号が呼び出されますが、ここでは両方を同じフォントに設定しています。数学モードでも\textbf(または、より堅牢には\textnormal{\bfseries ...})を使用できます。

ライニング番号をサポートするジョージアのバージョンでは、補足の\setmathfontコマンドにオプションNumbers=Liningを追加で指定できます。または、文字とではなく番号にジョージアを特に使用する場合は、range=up/{Latin,latin,Greek,greek}など

\mathbfフォントは、数学モードの単語や短いフレーズを対象としており、メインのフォントとは異なるものに変更できます。 \setmathrm[BoldFont={...}, BoldFeatures={...}]のテキストフォント。または、polyglossiaの前に\usepackage[no-math]{fontspec}を呼び出して、\mathbf

が変更されないようにすることもできます。 id = “e7f080845c”>

など。

unicode-mathパッケージは\boldsymbolをサポートします。 、ただし、これは\mathversion{bold}を呼び出します。 2020年の時点で、unicode-mathversion=boldrange=の両方のオプションをサポートしていません。 id = “ba80c46fdb”>

を同時に使用するため、\boldsymbolを確実に使用したり、数学モードで文字を変更したりすることはできません。

その他のオプション数学フォントをジョージアに変更するには、mathastext、またはXeTeXではmathspecです。

回答

いいえ、TeXliveはバージョン番号が付いた単なる別のディストリビューションです。

多かれ少なかれキッチンシンクとすべてのものが含まれているため、人々はそれを使用します「維持されていますが、バージョン番号は間違いなくあります。

そしてそれを扱う人々は、ピースが一緒に機能することを確認しようとします。

また、その巨大なサイズのために、TeXliveは、ディストリビューション内のいくつかの小さなサブパッケージに分割される場合があります。

レンダリング間の違いを説明するには、これで十分です。

一般に、このような問題が発生した場合、再現性が重要です…したがって、一般的に、使用済みLaTeXパッケージのバージョン番号のログが大いに役立つ場合があります。

コメント

  • TeXへようこそ。 SE!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です