下面的乳胶代码可以产生多个产品标志:
\documentclass{article}
\usepackage{amssymb,amsmath,graphicx,color}
\newcommand{\invcircledast}{%
\mathbin{\vphantom{\circledast}\text{%
\ooalign{\smash{\blackcircle}\cr
\hidewidth\smash{\textcolor{white}{$*$}}\hidewidth\cr
}%
}}%
}
\newcommand{\blackcircle}{\raisebox{-.4ex}{\scalebox{1.66}{$\bullet$}}}
\makeatletter
\newcommand\bigCircledast{\mathop{\mathpalette\b@gCircledast\relax}}
\newcommand\b@gCircledast[2]{%
\vcenter{\hbox{\m@th
\scalebox{\ifx#1\displaystyle 2.3\else1.2\fi}{$#1\circledast$}%
}}%
}
\newcommand\bigInvcircledast{\mathop{\mathpalette\b@gInvcircledast\relax}}
\newcommand\b@gInvcircledast[2]{%
\vcenter{\hbox{\m@th
\scalebox{\ifx#1\displaystyle 2.3\else1.2\fi}{$#1\invcircledast$}%
}}%
}
\makeatother
\begin{document}
\[
\bigoplus_{i=1}^n % just for comparison
\bigCircledast_{i=1}^n % just for comparison
\bigInvcircledast_{i=1}^n (a_i\invcircledast b_i)
\]
\end{document}
我现在的问题是如何调整乘积符号\bigCircledast
和\bigInvcircledast
使得磁盘具有与的大小相同,\bigoplus
并且下标和上标分别与的下标或上标位于同一行\bigoplus
。
还比较以下问题和答案相反的产品标志,即黑色和白色互换和填充\钻石产品标志。
上述代码中使用的大部分想法都来自埃格尔。另请参阅上面的链接。
答案1
这个问题有一个解决办法:
本质上我\vcenter{\hbox{\rule{0pt}{16pt}}}
在命令定义末尾添加了。这个解决方案的缺点是它依赖于字体大小。例如,如果使用 来\Huge
放大字体大小,则需要将 的高度\rule
调整为40pt
。
本解决方案的全部代码如下:
\documentclass{article}
\usepackage{amssymb,amsmath,graphicx,color}
\newcommand{\invcircledast}{%
\mathbin{\vphantom{\circledast}\text{%
\ooalign{\smash{\blackcircle}\cr
\hidewidth\smash{\textcolor{white}{$*$}}\hidewidth\cr
}%
}}%
}
\newcommand{\blackcircle}{\raisebox{-.4ex}{\scalebox{1.66}{$\bullet$}}}
\makeatletter
\newcommand\bigCircledast{\mathop{\mathpalette\b@gCircledast\relax}}
\newcommand\b@gCircledast[2]{%
\vcenter{\hbox{\m@th
\scalebox{\ifx#1\displaystyle 2.1\else1.2\fi}{$#1\circledast$}%
}}\vcenter{\hbox{\rule{0pt}{16pt}}}%
}
\newcommand\bigInvcircledast{\mathop{\mathpalette\b@gInvcircledast\relax}}
\newcommand\b@gInvcircledast[2]{%
\vcenter{\hbox{\m@th
\scalebox{\ifx#1\displaystyle 2.1\else1.2\fi}{$#1\invcircledast$}%
}}\vcenter{\hbox{\rule{0pt}{16pt}}}%
}
\makeatother
\begin{document}%\Huge
\[
\bigoplus_{i=1}^n % just for comparison
\bigCircledast_{i=1}^n
\bigInvcircledast_{i=1}^n (a_i\invcircledast b_i)
\]
\end{document}