我正在使用 Xelatex。我正在尝试输入日语丸印符号添加到我的文档中。获取符号的确切方法是将键盘切换到 Microsoft Japanese IME,键入maru
,点击空格键并选择○ 丸印
。如果我将其输入 Google,它会告诉我该字符是Unicode字符‘白色圆圈’ (U+25CB)。
我尝试\textbigcircle
从textcomp
包中获取,但同样无效。不过,我认为该字符的尺寸不合适,所以我不想要它。
我还以为可能是字体问题,但我使用的是 MS Mincho,它在 Microsoft Word 中显示正常。所以我猜它也会出现在我的文档中。
更多背景信息:我正在编写一个包含拉丁字母和 CJK 的文档。xeCJK
使用一种字体来表示拉丁字母,使用 MS Mincho 来表示日文字符。我希望能够保留这一点。
我怎样才能使这个字符显示在我的文档中?
以下是我的示例:
\documentclass{article}
\usepackage[boldfont]{xeCJK}
\setCJKmainfont{MS Mincho}
\begin{document}
○ Keyboard input of ``marujirushi"
\end{document}
以下是我在文档中使用的软件包列表,仅供参考:
\usepackage[boldfont]{xeCJK}
\usepackage{makecell}
\usepackage{csquotes}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{titlesec}
\usepackage{ruby}
\usepackage{textcomp}
\usepackage{tipa}
答案1
该字符不属于 CJK 家族,因此xeCJK
将在拉丁家族中打印它,而默认的拉丁现代字符没有它。
你有两种策略:
- 将具有字形的字体定义为主(拉丁)字体(如果它支持拉丁语,它可以是与 CJK 字形相同的字体)
- 重新定义字符以发出选择 CJK 字体的命令
您还可以通过定义具有字形的字体将两者结合起来。
第一个策略
\documentclass{article}
\usepackage{xeCJK}
\setCJKmainfont{Hiragino Mincho Pro W3} % or whatever
\setmainfont{Hiragino Mincho Pro W3}
\begin{document}
○ Keyboard input of ``marujirushi"
\end{document}
第二种策略
\documentclass{article}
\usepackage{xeCJK}
\usepackage{newunicodechar}
\setCJKmainfont{Hiragino Mincho Pro W3} % or whatever
\ExplSyntaxOn
\newunicodechar{○}{{\xeCJK_select_font: ○}}
\ExplSyntaxOff
\begin{document}
○ Keyboard input of ``marujirushi"
\end{document}
联合策略
\documentclass{article}
\usepackage{xeCJK}
\usepackage{newunicodechar}
\setCJKmainfont{Hiragino Mincho Pro W3} % or whatever
\newfontfamily{\maru}{Hiragino Mincho Pro W3} % or whatever
\newunicodechar{○}{{\maru ○}}
\begin{document}
○ Keyboard input of ``marujirushi"
\end{document}
笔记
由于我没有 MS Mincho,所以我使用了不同的 CJK 字体,但这应该无关紧要。
不同的策略(警告:没有进行真正的测试)
使用“\xeCJK_select_font:
\documentclass{article}
\usepackage{xeCJK}
\usepackage{newunicodechar}
\setCJKmainfont{Hiragino Mincho Pro W3} % or whatever
\ExplSyntaxOn
\newunicodechar{○}{{\normalfont\xeCJK_select_font: ○}}
\ExplSyntaxOff
\begin{document}
○ Keyboard input of ``marujirushi"
\end{document}
请注意,由于我不懂日语、中文或韩语,因此没有进行真正的测试。
答案2
如果不使用 CJK 设置,它可以工作:
\documentclass{article}
\usepackage{fontspec}
%\usepackage[boldfont]{xeCJK}
%\setCJKmainfont{MS Mincho}
\setmainfont{MS Mincho}
\begin{document}
○ Keyboard input of ``marujirushi"
\end{document}
或者:
\documentclass{article}
\usepackage{xeCJK}
\setCJKmainfont{MS Mincho}
\newfontface\Mincho{MS Mincho}
\begin{document}
{\Mincho○} Keyboard input of ``marujirushi"
\end{document}