如果这个问题已经得到解答,我很抱歉,但是 chatgpt 都没有给我满意的答案,我也没有在 stack exchange 上找到我想要的东西。 我想知道是否有一种“规范”的方法来裁剪数学运算符以创建新的数学运算符
让我更具体一点,向你展示我想要哪个(显然缺失的)操作符:
我想要一个直接因数符号,即二分直和符号 ( \oplus
)。我想保留左半部分并删除右半部分。
有人知道怎么做这个吗?
以下是 chatgpt 提供的内容:
\newcommand{\eplus}{\mathbin{\clipbox{0pt 0pt 0.5\width 0pt}{$\oplus$}}}
这已经很酷了,但是存在对齐问题并且会发生错误:
missing number, treated as zero
提前感谢您的帮助!
附言:如果您知道一个处理这个符号的包,这也会让我满意:)!
这是(几乎完整的文档):(提前抱歉,我必须回到我的 cls 文档,我希望它是有序的):
\documentclass[a4paper,10pt]{article}
\usepackage[english]{babel}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\usepackage{enumitem}
\renewcommand{\thechapter}{\Roman{chapter}}
\renewcommand{\thesection}{\@arabic\c@section}
\setitemize[1]{label=$\bullet$}
\setitemize[2]{label=-}
\setenumerate[0]{label=$(\roman*)$}
\usepackage{amsmath}
\usepackage{stmaryrd}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{dsfont}
\usepackage{mathtools}
\usepackage{cancel}
\usepackage{faktor}
\usepackage{esint}
\usepackage{mathdots}
\usepackage{multirow}
\usepackage{tikz}
\usetikzlibrary{decorations.pathmorphing}
% A lot of things (essentially macros and environments + drawings things)
\usepackage{geometry}
\pagestyle{headings}
\\usepackage{caption}
\DeclareCaptionFormat{sanslabel}{#3}%
\usepackage{adjustbox}
\usepackage{multicol}
\newcommand{\eplus}{\mathbin{\clipbox{0pt 0pt 0.5\width 0pt}{$\oplus$}}}
\begin{document}
%blabla
\( A \eplus B\)
%blabla
\end{document}
答案1
首先:ChatGPT似乎提供合理的答案。但通常情况下,他们做不到。
然而,\clipbox
这肯定是一件值得开始的事情。
您不应该在半宽处进行裁剪,因为这样您会丢失大部分垂直条;接下来,您需要在右侧进行一些侧边距。
经过多次尝试,因子 0.484 已经“直观”计算出来,并且显然依赖于数学字体。
\documentclass{article}
\usepackage{amsmath}
\usepackage{trimclip}
\makeatletter
\NewDocumentCommand{\eplus}{}{\mathbin{\mathpalette\eplus@\relax\mspace{1mu}}}
\newcommand{\eplus@}[2]{%
\clipbox{0 0 {0.484\width} 0}{$\m@th#1\oplus$}%
}
\makeatother
\begin{document}
$A\eplus B$
$x_{A\eplus B}$
\end{document}
请注意周围的括号0.484\width
,否则会出现错误。