LaTeX 中的白色垂直矩形符号

LaTeX 中的白色垂直矩形符号

如何在 LaTeX 中制作类似 Unicode 字符“白色垂直矩形”(U+25AF)的符号?

我试过

\documentclass{article}
\usepackage{stix}
\begin{document}
$a \vrectangle b $
\end{document}

– 它可以起作用,但是会使我的 PDF 完全改变外观(比平时更丑)。

我也尝试改编\newcommand以下答案:问题,但失败了。

语境

这个符号是排版有关通信顺序进程 (CSP) 的论文时需要的。根据我的教授的说法,这个符号读作“fetbar”(拼写错误为“fat bar”),用于表示按渠道选择。像这样:

MACHINE = (coinslot.$5 → (tea_button.press → hatch.tea → MACHINE ▭ icetea_button.press → hatch.icetea → MACHINE ))

(但不应该有一个水平的白色矩形,而应该有一个垂直的矩形。)

答案1

我想到的第一两个想法如下:

\documentclass{article}

\newcommand*{\vrectangleA}{{\ooalign{\lower.3ex\hbox{$\sqcup$}\cr\raise.4ex\hbox{$\sqcap$}}}}

\newcommand*{\vrectangleB}{{\setlength{\fboxsep}{0pt}\fbox{\phantom{l}}}}

\begin{document}

a \vrectangleA\ b

a \vrectangleB\ b

\end{document}

在此处输入图片描述

答案2

\fontdimen8下标和上标的缩放版本,还会根据相应数学样式(存储在系列 3 中的字体中)中的分数线的粗细改变线条粗细。

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\providecommand{\vrectangle}{\mkern1mu\mathpalette\v@rectangle\relax\mkern1mu}
\newcommand{\v@rectangle}[2]{%
  \hbox{%begingroup
  \fboxrule=0.5\fontdimen 8
    \ifx#1\displaystyle\textfont\else
    \ifx#1\textstyle\textfont\else
    \ifx#1\scriptstyle\scriptfont\else
    \scriptscriptfont\fi\fi\fi 3
  \fboxsep=-\fboxrule
  \fbox{$\m@th#1\phantom{(}$}%
  }%\endgroup
}
\makeatother


\begin{document}

$a \vrectangle b_{\vrectangle_{\vrectangle}}$

\end{document}

0.5改变前面的因素\fontdimen以适合您的口味。

您可能想要更改类型,例如

\newcommand{\bvrectangle}{\mathbin{\vrectangle}} % for a binary operation

或者

\newcommand{\rvrectangle}{\mathrel{\vrectangle}} % for a binary relation

在此处输入图片描述

相关内容