该fourier
包不提供\nmid
命令。使用\nmid
fromamssymb
看起来与 fourier 的非常不同\mid
。
有没有办法在 Fourier 中生成“兼容”符号?两条垂直线应具有相同的高度和宽度,但当它们排版为上下两行时,\mid
应有一些额外的空间以匹配 的宽度,如下所示。\nmid
我尝试从中导入两者MnSymbol
,但无法弄清楚它们在那里是如何定义的。
\documentclass{minimal}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[widespace]{fourier}
\begin{document}
\begin{align*}
a&=b & v\mid\infty\\
c&=d & v\nmid\infty
\end{align*}
\end{document}
答案1
这是一种可能性,将旋转的减号叠加到垂直条上。
\documentclass{article}
\usepackage{amsmath}
%\usepackage{amssymb}
\usepackage{graphicx}
\usepackage[widespace]{fourier}
\makeatletter
\providecommand{\nmid}{} % a mock definition
\renewcommand\nmid{\mathrel{\mathpalette\thiel@nmid\relax}}
\newcommand{\thiel@nmid}[2]{%
\ooalign{%
\rotatebox[origin=c]{40}{$\m@th#1-\mkern-3.5mu$}\cr
\hidewidth$\m@th#1|$\hidewidth\cr}%
}
\makeatother
\begin{document}
\begin{gather*}
v\mid\infty\\
v\nmid\infty\\
x_{\nmid_{\nmid}}
\end{gather*}
\end{document}
我首先使用\providecommand
来定义\nmid
,因此后者\renewcommand
在所有情况下都有效。
我不确定您是否真的想\mid
占用尽可能多的空间,除了\nmid
在必须对齐的罕见情况下,因此我认为最好\wmid
为“宽\mid
”定义一个新命令:
\newcommand\wmid{\mathrel{\mathpalette\thiel@mid\relax}}
\newcommand{\thiel@mid}[2]{%
\ooalign{%
\hphantom{\rotatebox[origin=c]{40}{$\m@th#1-\mkern-3.5mu$}}\cr
\hidewidth$\m@th#1|$\hidewidth\cr}%
}
(在上面的代码中,将其放在前面\makeatother
)。然后代码
\begin{align*}
v&\wmid\infty\\
v&\nmid\infty
\end{align*}
将产生