
こんにちは、こんにちは。チルダの 2 つの異なる動作に関して解決すべき状況があります。1 つ目は、通常のテキスト内では正常に見え、次のようになります。
... some text $\sim$A then some text ...
ただし、数式モード (またはテキスト内の数式のドル記号内) では、チルダと文字の間にスペースがあります (下のスクリーンショットを参照)。
... some text $\sim{A}$ then some text ...
方程式モードでそのスペースを削除する方法はありますか?
方程式モードに必要です:
\[ \sim{A} = ... \]
関連する場合、プリアンブルでは、パッケージを使用しlmodern
て CM10 フォントを使用します。さらに、方程式を扱う他のいくつかのものも使用しmathptmx, amssymb, amsmath, mathspec
、xelatex を使用してテキストを解析します。
答え1
のデフォルトの「数式タイプ」は、つまり関係演算子のもの\sim
ですmathrel
。( の演算子の別の例はmathrel
です=
。) 文字 のデフォルトの数式タイプは (「math ordinary」)A
です。あなたが「発見した」ように、TeX はとのタイプの要素の間に のmathord
量の空白を自動的に挿入します。\thickmuskip
mathrel
mathord
もし、するならない\sim
との間に空白を入れたい場合A
、単に次のように記述します。
{\sim}A
この設定により、の数式タイプ\sim
は に変更されmathord
、TeXはない型の要素間に余分な空白を挿入しますmathord
。
答え2
通常、\sim
は のような関係です=
。したがって、空間が必要です。
\documentclass{article}
\usepackage{lmodern}
\usepackage{amsmath}
\begin{document}
\[ A = B \]
\[ A \sim B \]
\end{document}
しかし、通常のシンボルとして定義することもできます。
\documentclass{article}
\usepackage{lmodern}
\usepackage{amsmath}
\mathchardef\simsym"0218
\begin{document}
\[ A \sim B \]
\[ A \simsym B \]
\end{document}
数学クラスの詳細については、例えば以下を参照してください。トピック別TeXセクション38.3および23.3。
代わりに\mathchardef
、
\newcommand*{\simsym}{\mathord\sim}
\simsym
を の通常の記号変形として定義します\sim
。
\documentclass{article}
\usepackage{lmodern}
\usepackage{amsmath}
\newcommand*{\simsym}{\mathord\sim}
\begin{document}
\[ A \sim B \]
\[ A \simsym B \]
\end{document}
結果は上記と全く同じで、
\documentclass{article}
\usepackage{lmodern}
\usepackage{amsmath}
\newcommand*{\simsym}{{\sim}}% note the extra {…}
\begin{document}
\[ A \sim B \]
\[ A \simsym B \]
\end{document}