
Я хотел бы определить новый символ деления, похожий на черту "/", но который является знаком минус (-), повернутым на 45 градусов, таким же образом, \times
как и повернутое +. Я хочу, чтобы он имел те же свойства, что и другие арифметические символы (+,- и \times
), то есть тот же интервал и т. д.
Я попытался сделать следующее.
% Inversa da multiplicação em anéis e grupos
\makeatletter
\providecommand{\newdiv}{%
\mathbin{
\hspace{-1.5pt}\mathpalette\@rotatinganeighth{-}\hspace{-1.5pt}
}
}
\newcommand*{\@rotatinganeighth}[2]{%
\rotatebox[origin=c]{45}{$\m@th#1#2$}%
}
\makeatother
Результаты кажутся хорошими, но мне хотелось бы чего-то «почище». Мне не нравится тот факт, что я ввожу определенный пробел \hspace{-1.5pt}
, я просто хотел, чтобы он вел себя как бинарная операция и, если возможно, как унарная операция, когда перед ним нет символа (так же, как ведет себя знак минус).
решение1
Я предлагаю \mathpalette
сделать так, чтобы символ правильно масштабировался в нижних и верхних индексах.
Знак минус имеет высоту, равную знаку плюс, поэтому нам нужно разбить его и поместить в коробку такой же ширины, как знак плюс. Вертикальный фантом обеспечит правильную высоту и глубину.
\documentclass{article}
\usepackage{graphicx}
\makeatletter
\newcommand{\newdiv}{\mathbin{\mathpalette\@newdiv\relax}}
\newcommand{\@newdiv}[2]{%
\begingroup
\sbox\z@{$\m@th#1+$}%
\makebox[\wd\z@]{\smash{\rotatebox[origin=c]{45}{$\m@th#1-$}}}%
\vphantom{\usebox{\z@}}%
\endgroup
}
\makeatother
\setlength{\fboxsep}{0pt}\setlength{\fboxrule}{0.1pt}% just for the example
\begin{document}
$a+b$ \fbox{$a+b$}
$a\newdiv b$ \fbox{$a\newdiv b$}
$\scriptstyle a+b\newdiv c$
\end{document}