首页 > 解决方案 > 如何在 Mathjax 中围绕文本编码圆圈

问题描述

下图来自 Chiswell 和 Hodges 数学逻辑中的一个练习,第 21 页:

在此处输入图像描述

当我在数学堆栈交换上发布答案时,我想显示类似的内容,但我不知道如何用里面的数字制作圆圈,也不知道如何用 Mathjax 中的字母制作正斜杠。我想我可以用“\frac”处理分数以及其余部分。

我已经从其他帖子中寻找示例进行复制,但人们似乎用括号替换圆圈作为替代方案。

有人能告诉我我应该如何或使用什么软件来获得这种效果吗?

标签: mathjax

解决方案


有许多可能的方法可以围绕一个圆圈。这里有三个:

  1. 使用带有符号的enclose扩展名:circle

    \require{enclose}
    {\scriptstyle \enclose{circle}{\kern .06em 1\kern .06em}}
    

    您只需\require{enclose}在第一次使用\enclose. 命令是使圆成为圆形而\kern不是椭圆形,因为它的大小比宽度大。

  2. 用于\rlap将 1 放在 a 的顶部\bigcirc

    {scriptstyle \rlap{\kern .18em 1}\raise.04em{\bigcirc}}}
    

    我们还略微提高了大圆圈以更好地放置。

  3. 使用\unicode{}命令获取U+2460字符,即“带圈数一”:

    {\textstyle\unicode{x2460}}
    

您可以使用cancel包来获取\cancel,它会在其参数上产生一个对角向上的斜线,并使用上标将带圆圈的 1 放在适当的位置:

{scriptstyle\cancel{\psi}^{\raise.2em{\enclose{circle}{\kern .06em 1\kern .06em}}}}

将所有这些与您的分数放在一起,您可以执行以下可怕的黑客攻击:

\require{enclose}\require{cancel}
\frac{
  \lower.3em{\scriptstyle\cancel{\psi}\raise.6em{\enclose{circle}{\kern .06em 1\kern .06em}}}
  \kern 2.6em
  \frac{(\psi\wedge\phi)}{\phi}
  {\scriptstyle (\wedge\rm E)}
  \kern -2.5em
}{
  \kern -.7em
  {\scriptstyle\enclose{circle}{\kern .06em 1\kern .06em}}
  \frac{(\psi\wedge\phi)}{(\psi\rightarrow(\psi\wedge\phi))}
  {\scriptstyle(\rightarrow\rm I)}
  \kern -1.7em
}\ {\scriptstyle (\wedge\rm I).}

这包括手动进行大量间距调整,以使分数线的长度正确。对于其中很多人来说,这样做会很痛苦。

结果如下:

证明布局示例


推荐阅读