修改另一个复选标记,还是添加另一个?

修改另一个复选标记,还是添加另一个?

我应该事先解释一下,我使用 XeLaTeX,因此我可以使用各种字体和 Unicode 支持。

现在,我经常使用“投票箱”(U+2610)和“带支票的投票箱”(U+2611)来进行出勤协议。

现在,我想添加另一个类似的字符,但在投票箱内添加一个小“e”或“E”。这就是我计划用于“excused”的字符。我更愿意将“BALLOT BOX”字符与较小的“E”混合,而不是构建新的形状作为 SVG 或其他东西,这样在更改为其他字体时就不会有问题了。

答案1

好吧,也许你可能只使用\fbox,然后你可以改变间距和字体大小:

\documentclass{article}

\usepackage{relsize}

\begin{document}

A\raisebox{0.1em}{\smaller\fboxsep0.1em\fbox{E}}B

\end{document}

您不需要 Unicode 字体。


当然,你可以混合这两个符号:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Arial Unicode MS}
\usepackage{relsize}
\begin{document}

A\ooalign{\symbol{"2610}\cr\hfil\smaller[2]\raisebox{0.1em}{E}\hfil\cr}B\symbol{"2611}

\end{document}

在此处输入图片描述

答案2

以下示例定义了\ballot一个参数,该参数被水平和垂直居中地放入空投票箱中。如有必要,内容会缩小以适合投票箱。

\documentclass[12pt]{article}
\usepackage{graphics}
\usepackage{fontspec}

\newdimen\BallotDimen
\newsavebox\BallotBoxEmpty
\newsavebox\BallotBoxChar
\newcommand*{\ballot}[1]{%
  \begingroup
    \setlength{\fboxrule}{0pt}%
    \sbox\BallotBoxEmpty{^^^^2610}%
    \setlength{\fboxsep}{.175\wd\BallotBoxEmpty}%
    \BallotDimen=\dimexpr\wd\BallotBoxEmpty-2\fboxsep\relax
    \sbox\BallotBoxChar{#1}%
    \ifdim\wd\BallotBoxChar>\BallotDimen
      \sbox\BallotBoxChar{\resizebox{\BallotDimen}{!}{\usebox\BallotBoxChar}}%
    \fi
    \ifdim\dp\BallotBoxChar>0pt %
      \sbox\BallotBoxChar{\raisebox{\dp\BallotBoxChar}{\usebox\BallotBoxChar}}%
    \fi
    \ifdim\ht\BallotBoxChar>\BallotDimen
      \sbox\BallotBoxChar{\resizebox{!}{\BallotDimen}{\usebox\BallotBoxChar}}%
    \fi
    \ooalign{%
      \usebox\BallotBoxEmpty\cr
      \hfil
      \raisebox{.5\dimexpr\ht\BallotBoxEmpty-\ht\BallotBoxChar}%
               {\usebox\BallotBoxChar}%
      \hfil
    }%
  \endgroup
}

\begin{document}
\fontspec{FreeSerif.otf}
^^^^2610^^^^2611^^^^2612\ballot{E}\ballot{e}\ballot{g}

\end{document}

结果

相关内容