有没有办法排版符号“:⇔”正确地在 LaTeX 中(即具有正确的对齐和间距)?我知道使用:\Leftrightarrow
或:\Longleftrightarrow
可以得到我正在寻找的符号(或多或少),但间距对我来说看起来不对。使用\iff
或 的构造\colon
似乎也没有真正起作用。
我是否必须自己定义这样的符号(如果是:如何定义?),或者是否有一个包可以证明这一点?不幸的是,我自己没有找到任何东西(特别是因为我不知道到底要搜索什么;我从维基百科上得到了“定义为逻辑等价”的描述,因为我甚至不知道正确的名称)。
答案1
软件包colonequals
提供了一个垂直居中的冒号:\ratio
。\ratio
和\Leftrightarrow
都是类型\mathrel
,因此 TeX 不会在它们之间放置额外的空格:
\documentclass{article}
\usepackage{colonequals}
\newcommand*{\logeq}{\ratio\Leftrightarrow}
\begin{document}
\[ A \logeq B \]
\end{document}
当需要在冒号和箭头之间留出更多空间时(参见拉斐尔的评论),则\colonsep
可以在符号之间定义并设置,例如:
\renewcommand*{\colonsep}{\mkern1mu\relax}% small extra space
\newcommand*{\logeq}{%
\mathrel{\ratio\colonsep\Leftrightarrow}%
}
PS 这里是否使用星号形式并不重要\newcommand
,因为没有任何参数,定义也不是空的。因此,这里主要是个人喜好问题。
我更喜欢星号形式,因为我更倾向于从较低级别的命令的角度来思考。\newcommand*
使用\def
,而\newcommand
使用\long\def
。如果没有参数,我看不出 的理由\long
,因此我使用\newcommand*
。
答案2
该mathtools
软件包中已经有了执行该操作所需的工具(不要加载amsmath
:mathtools 已经可以做到):
\documentclass[12pt]{article}
\usepackage{mathtools}
\newcommand\logeq{\mathrel{\vcentcolon\Leftrightarrow}}
\begin{document}
\[ A \logeq A \]
\end{document}
答案3
也许是这个?
\documentclass[12pt]{article}
\usepackage{amsmath}
\newcommand\logeq{\mathrel{\raisebox{.66pt}{:}}\Leftrightarrow}
\begin{document}
\[
A \logeq A
\]
\end{document}