我有一篇论文需要同时使用\Box
和\blacksquare
。这两个符号的高度不一样。我可以使用,\square
但amssymb
我不喜欢\square
和的大小\blacksquare
,我更愿意缩小\blacksquare
到和的大小\Box
。两者都将用于普通数学文本和下标大小。
答案1
如果您想创建自己的填充正方形,您可以使用,例如,\rule[1pt]{5pt}{5pt}
调整相对于基线的大小和位置以满足您的喜好,并使用为其定义一个名称,\newcommand
如果您想在文档中多次使用它。
例如(仅用于说明,包括 MnSymbol 项目以供比较),
\documentclass{article}
\usepackage{amsmath}
\usepackage{MnSymbol}
\newcommand\subHalmos{\rule[0.2pt]{2.4pt}{2.4pt}}
\newcommand\Halmos{\rule[0.4pt]{4pt}{4pt}}
\begin{document}
$ \Box \filledmedsquare \medsquare$ use MnSymbol.
$ \rule[0.4pt]{4pt}{4pt}x_{y\rule[0.2pt]{2.4pt}{2.4pt}}$ and
$ \Halmos x_{y\subHalmos}$ both produce the same result but
the second is easier to type and to maintain in a large document.
\end{document}
该方法的主要缺点是,如果符号周围的文本改变大小,符号的大小也不会改变(从定义两个版本中可以明显看出)。您可以通过用变量定义符号的大小来解决这个问题,例如高度,或者更好的(正如 Barbara Beeton 所建议的),\Box 的实际大小。
脚注
其中\usepackage{MnSymbol}
,\medsquare
是的同义词\Box
,并且 MnSymbol 包含 \blacksquare 作为 \filledmedsquare` 的同义词,它应该与 \Box 大小相同但已填充(更多信息请参阅脚注)。
mnsymbol/Sym-Geometric.mf 中的中等正方形和中等填充正方形的定义大小相同:
beginoperator(med_op_size#/sqrt(2), 1); "medium square";
pickup rule_pen;
draw square(centre, w/2 - side_bearing, 0);
endchar;
beginoperator(med_op_size#/sqrt(2), 1); "medium filled square";
pickup rule_pen;
draw square(centre, w/2 - side_bearing, 0);
fill square(centre, w/2 - side_bearing, 0);
endchar;
但空的正方形和填充的正方形在肉眼看来大小会有所不同。