如何创建以下关系符号?
我当前的解决方案:
到目前为止,我找到了一种将字母放在符号上方的代码\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}