创建如下图所示的插入符号的代码是什么?
答案1
快速破解:
\documentclass{article}
\newcommand{\smallwedge}{%
\mathbin{\mathchoice
{\scriptstyle\wedge}
{\scriptstyle\wedge}
{\scriptscriptstyle\wedge}
{\scriptscriptstyle\wedge}%
}%
}
\newcommand{\smallerwedge}{\mathbin{\scriptscriptstyle\wedge}}
\begin{document}
$0\wedge 0_{0\wedge 0}$
$0\smallwedge 0_{0\smallwedge 0}$
$0\smallerwedge 0$
\end{document}
您也可以在第一级下标/上标中使用\smallwedge
(在第二级中它不会更小)。
因为\smallerwedge
只有主尺寸可以。如果你不需要它在下标/上标中,这可能是最简单的解决方案。
不同的方法可能是缩放楔形符号(但使用粗体版本,因此不会太细):
\documentclass{article}
\usepackage{amsmath,graphicx}
\newcommand{\smallwedge}{%
\mathbin{\text{\scalebox{.5}{\boldmath$\wedge$}}}%
}
\begin{document}
$0\smallwedge 0_{0\smallwedge 0}$
\end{document}
从效率角度而言这较为昂贵,但具有在任何层面上都能工作的优势。
答案2
因为问题中没有提到 LaTeX 这个词,所以我将展示 plainTeX 解决方案(在 LaTeX 中也有效)。
\newfam\swedgefam \newcount\tmpnum
\font\tmpT=cmbsy10 scaled500 \font\tmpS=cmbsy7 scaled500 \font\tmpSS=cmbsy5 scaled500
\textfont\swedgefam=\tmpT \scriptfont\swedgefam=\tmpS \scriptscriptfont\swedgefam=\tmpSS
\tmpnum=\swedgefam \multiply\tmpnum by256 \advance\tmpnum by"205E % binop + code
\mathchardef\smallwedge=\tmpnum
$0\smallwedge0_{0\smallwedge0_{0\smallwedge0}}$
该解决方案的优点:
\smallwedge
效率高:四个分支中无需分别排版,\scalebox
每个分支中也无需排版。- 它适用于所有常见格式:纯 TeX、LaTeX、ConTeXt。
- 这是一个教育示例,展示如何在纯 TeX 中从选定的字体添加新的数学符号。
该解决方案的缺点:
- 新的数学系列仅分配给一个数学符号。传统 TeX(和 eTeX)只有 16 个这样的系列可用(其中四个始终分配)。因此,这似乎是浪费资源。