如何创建带有上下字母的自定义关系符号

如何创建带有上下字母的自定义关系符号

如何创建以下关系符号?

自定义关系符号

我当前的解决方案:

到目前为止,我找到了一种将字母放在符号上方的代码\vdash。但这并不是我想要的:

\documentclass{article}
\newcommand{\xvdash}[1]{%
  \vdash^{\mkern-10mu\scriptscriptstyle\rule[-.9ex]{0pt}{0pt}#1}%
}

\begin{document}
\[
A \xvdash{W} x
\]
\end{document}

最后看起来会像这样:

自定义关系符号

有没有更好的方法或软件包可以做到这一点?如何稍微增加尺寸(主要是宽度)\vdash?或者有没有办法画一个\vdash类似符号?如何将字符放在顶部和下方?有没有办法缩小字符的大小?

答案1

这和你想要的相似吗?

\documentclass{article}
\usepackage{pict2e,amsmath,relsize}

\DeclareRobustCommand{\xvdash}[2][]{\mathrel{\drawxvdash{#1}{#2}}}

\newcommand{\drawxvdash}[2]{%
  \vcenter{\hbox{%
    \setlength{\unitlength}{1em}%
    \begin{picture}(1,1)
    \roundcap
    \put(0,0){\line(0,1){1}}
    \put(0,0.5){\line(1,0){1}}
    \put(0.5,0){\makebox[0pt]{\text{\smaller$\scriptscriptstyle#2$}}}
    \put(0.5,0.6){\makebox[0pt]{\text{\smaller$\scriptscriptstyle#1$}}}
    \end{picture}%
  }}%
}

\begin{document}

$(q,w)\xvdash[*]{M}(p,u)$

\end{document}

在此处输入图片描述

答案2

\stackinset使用以下命令解决stackengine

\documentclass[a4paper, 12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{stackengine}
\newcommand\Mvdash{\mathrel{\stackMath\stackinset{r}{0.1em}{c}{0.15ex}{\setstackgap{L}{1.1ex}\everymath{\scriptscriptstyle}\Vectorstack[c]{* M}}{\vdash\mkern-15mu\raisebox{0.23ex}{$\relbar$}}}}

\begin{document}

 \[A \Mvdash B \]%

\end{document}

在此处输入图片描述

相关内容