答案1
(备注:请务必查看Heiko 的扩展/改进解决方案也。
以下是基于 Christian Hupfer 的建议并加以改进的解决方案。两个新宏(在以下代码中称为\flowsfroma
和\flowsfromb
)产生的左指波浪线非常相似,但不完全相同:第一个宏执行 180 度旋转;第二个宏执行围绕中心垂直轴的反射。
\documentclass{article}
\usepackage{amssymb} % for "\leadsto" macro
\usepackage{graphicx} % for "\rotatebox" and "\reflectbox" macros
\newcommand\flowsfroma{\mathrel{\vcenter{\hbox{\rotatebox{180}{$\leadsto$}}}}}
\newcommand\flowsfromb{\mathrel{\reflectbox{$\leadsto$}}}
\begin{document}
$u \leadsto v$
$v \flowsfroma u$
$v \flowsfromb u$
\end{document}
答案2
您的符号看起来与包的符号类似stix
,因此您可以使用\leftsquigarrow
:
\documentclass{article}
\usepackage{amsmath, amssymb}
\usepackage{stix}
\begin{document}
\[
\leadsto \quad \leftsquigarrow
\]
\end{document}
否则,看看综合 LATEX 符号列表。
答案3
Mico 的扩展版本解决方案:
- 数学风格受到尊重。
\mathsurround
设置为零(\m@th
),以避免在\mathsurround
不为零的情况下留下额外的水平空间。\leadsto
是一个符号,其水平线段(或箭头)位于数学轴上。因此,旋转原点放在数学轴上,以避免符号的垂直位移。
完整示例:
\documentclass{article}
\usepackage{amssymb}
\usepackage{graphicx}
\makeatletter
\newcommand*{\flowsfroma}{%
\mathrel{\mathpalette\math@point@reflection\leadsto}%
}
% Point reflection at point (width/2, math axis).
% Package graphicx is required.
\newcommand*{\math@point@reflection}[2]{%
% #1: math style
% #2: math symbol
\begingroup
% Height of box 0 is math axis
\setbox0=\hbox{$#1\vcenter{}$}%
\rotatebox[y=\ht0]{180}{$#1#2\m@th$}%
\endgroup
}
\newcommand*{\flowsfromb}{%
\mathrel{\mathpalette\math@reflect@box\leadsto}%
}
% Reflection at the y-axis.
% Package graphics is required.
\newcommand*{\math@reflect@box}[2]{%
% #1: math style
% #2: math symbol
\reflectbox{$#1#2\m@th$}%
}
\makeatother
% Test part
\usepackage{xcolor}
\newcommand*{\TestAux}[2][\textstyle]{%
\sbox0{$#1u#2v$}%
\leavevmode
\rlap{\textcolor{green!50!white}{%
$#1\vcenter{\hrule height .05pt depth .05pt width\wd0}$%
}}%
\copy0 %
}
\newcommand*{\Test}[1]{%
\TestAux[\textstyle]{#1} %
\TestAux[\scriptstyle]{#1} %
\TestAux[\scriptscriptstyle]{#1}\par
}
\begin{document}
\Test\leadsto
\Test\flowsfroma
\Test\flowsfromb
\end{document}
细的浅绿色线标记数学轴。
答案4
如果你更喜欢“旧”符号:
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\DeclareFontFamily{U}{lasy}{}
\DeclareFontShape{U}{lasy}{m}{n}{
<-5.5> lasy5
<5.5-6.5> lasy6
<6.5-7.5> lasy7
<7.5-8.5> lasy8
<8.5-9.5> lasy9
<9.5-> lasy10
}{}
\DeclareRobustCommand{\Leadsto}{%
\mathrel{\text{\usefont{U}{lasy}{m}{n}\symbol{"3B}}}%
}
\DeclareRobustCommand{\rLeadsto}{%
\mathrel{\text{\reflectbox{\usefont{U}{lasy}{m}{n}\symbol{"3B}}}}%
}
\begin{document}
$A\Leadsto B\rLeadsto C$
\end{document}