例如,我想在 周围画一个圆圈\land
,就像+
写可以画一个圆圈一样\oplus
。有没有通用的方法可以做到这一点?
答案1
\land
以下是结合和的版本\bigcirc
:
\makeatletter
\newcommand\incircbin
{%
\mathpalette\@incircbin
}
\newcommand\@incircbin[2]
{%
\mathbin%
{%
\ooalign{\hidewidth$#1#2$\hidewidth\crcr$#1\bigcirc$}%
}%
}
\newcommand{\oland}{\incircbin{\land}}
\makeatother
它将根据数学风格改变大小:
\[a\oland b\frac{a\oland b}{a\oland b^{a\oland b^{a\oland b}}}\]
给出
答案2
更新
更正确的是下一个代码,我使用了来自 egreg 的代码这里
\documentclass{article}
\usepackage{amssymb,amsmath}
\usepackage{tikz}
\newcommand{\circleland}{
\mathbin{
\mathchoice
{\buildcircleland{\displaystyle}}
{\buildcircleland{\textstyle}}
{\buildcircleland{\scriptstyle}}
{\buildcircleland{\scriptscriptstyle}}
}
}
\newcommand\buildcircleland[1]{%
\begin{tikzpicture}[baseline=(X.base), inner sep=0, outer sep=0]
\node[draw,circle] (X) {$#1\land$};
\end{tikzpicture}%
}
\begin{document}
\[a\circleland b\frac{a\circleland b}{a\circleland b^{a\circleland b^{a\circleland b}}}\]
$x \circleland (y\circleland z)$ and $x \land (y\land z)$
\end{document}
答案3
您可以pgf
通过定义新命令来实现此目的:
\newcommand{\circleland}{
\tikz{
\pgfsetbaselinepointlater{\pgfpointanchor{X}{base}}
\pgfcircle{\pgfpointorigin}{0.15cm}
\pgfusepath{stroke}
\node (X) {$\land$};
}}
看看这个MWE:
\documentclass{article}
\usepackage{amssymb,amsmath}
\usepackage{tikz}
\newcommand{\circleland}{
\tikz{
\pgfsetbaselinepointlater{\pgfpointanchor{X}{base}}
\pgfcircle{\pgfpointorigin}{0.15cm}
\pgfusepath{stroke}
\node (X) {$\land$};
}}
\begin{document}
\[x \land y\]
\begin{equation}
x \circleland y
\end{equation}
\end{document}
结果是:
答案4
我花了一些时间尝试将 <、<=、=、>= 和 > 运算符很好地圈出来。代码最终有点黑客,尽管它有效:
<
\Large \textcircled{\normalsize \$\hspace{0.05 mm} <\$} \normalsize
<=
\Large \textcircled{\raisebox{1pt} {\normalsize \$\hspace{0.05 mm} \leq\$}} \normalsize
=
\Large \textcircled{\raisebox{1pt} {\normalsize \$\hspace{0.05 mm} =\$}} \normalsize
>=
\Large \textcircled{\raisebox{1pt} {\normalsize \$\hspace{0.1 mm} \geq\$}} \normalsize
>
\Large \textcircled{\normalsize \$\hspace{0.1 mm} >\$} \normalsize
水平间距非常挑剔。最后看起来像这样(中间一列):