
이제 안녕, 물결표의 두 가지 다른 동작으로 해결해야 할 상황이 있습니다. 첫 번째는 일반 텍스트 내에서 다음과 같이 정상적으로 보입니다.
... 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
는 입니다 =
.) 문자의 기본 수학 유형은 ("수학 일반") A
입니다 . mathord
"발견"했듯이 TeX는 각각 및 \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}