如何正确添加utf-8符号?

如何正确添加utf-8符号?

我想在我的 latex 文档中添加这两个 utf-8 符号 ☐ , ⌧ ,我还添加了\usepackage[utf8]{inputenc}。我该怎么做?

我的输入应如下所示: 在此处输入图片描述

答案1

如果您使用 Unicode 引擎(xetexluatex),则只需找到提供这些符号的字体即可。我体验过 DejaVu Sans 字体在这方面相当完整。您可能不想只为这些符号更改整个文档的字体,因此有必要分配一个\newfontfamily我命名为的字体\boxedsymbols。然后您可以在本地切换字体以打印奇异的符号。

\documentclass{article}
\usepackage{fontspec}
\newfontfamily\boxedsymbols{DejaVu Sans}
\begin{document}
Here we go: {\boxedsymbols ☐ ⌧}
\end{document}

在此处输入图片描述

对于pdflatex,可以将 Unicode 字符激活并定义它们以打印字体中可用的符号,看起来类似。在这里我使用数学符号\square\boxtimes(来自amssymb)。请注意,这些是不是您在文档中输入的实际 Unicode 符号,而是视觉等效符号。

如果您也想在数学模式下使用它们,请用 替换$<symbol>$。 (这是罕见的适用\ensuremath{<symbol>}情况之一。)\ensuremath

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amssymb}% for \boxtimes
\usepackage{newunicodechar}
\newunicodechar{☐}{$\square$}
\newunicodechar{⌧}{$\boxtimes$}
\begin{document}
Here we go: ☐ ⌧
\end{document}

在此处输入图片描述

该解决方案的功能pdflatex(即直接输入符号而无需切换字体)看起来很有吸引力,也可以通过 / 变体实现。xetexluatex记住,这不是一个好的做法,因为现在字符处于活动状态,并且每次在文本中遇到它们时都会执行代码。

\documentclass{article}
\usepackage{fontspec}
\usepackage{newunicodechar}
\newfontfamily\boxedsymbols{DejaVu Sans}
\newunicodechar{☐}{{\boxedsymbols\char`☐}}
\newunicodechar{⌧}{{\boxedsymbols\char`⌧}}
\begin{document}
Here we go: ☐ ⌧
\end{document}

输出与第一个变体相同。

答案2

您可以加载wasysym包并使用这些命令。请注意,\用于保留宏后的空间。

在此处输入图片描述

\documentclass{article}
\usepackage{wasysym}

\begin{document}

Do you like \LaTeX? \Square\ Yes – \Square\ No

You can answer using \CheckedBox\ or \XBox, but don't leave it empty!

\end{document}

相关内容