当我尝试使用日文字母时,pdfLatex 中的 Unicode 表示它仅支持最多 255 个代码点

当我尝试使用日文字母时,pdfLatex 中的 Unicode 表示它仅支持最多 255 个代码点

希望你一切顺利。这是一个非常简单的问题。

我想在公式中插入一些来自 Unicode 表的字符,但不幸的是我找不到方法。非常感谢您的帮助。目前我想要的字符是平假名字符 あ。我坚持通过提供 Unicode 代码点而不是复制粘贴字符来做到这一点,以便 pdfLatex 能够理解它。我也希望能够在 pfLatex 上做到这一点。

更新:

只是为了强调,我不想输入类似

let $あ : \mathbb{R} \rightarrow \mathbb{R}$ be a real function.

我想要做的是使用这样的命令:

 Let $\symbol{U+3042}: \mathbb{R} \rightarrow \mathbb{R}$ be a real function.

我想输入代码并获取字符,并希望这能在 pdfLatex 上实现。我们有这样的东西吗?

更新 2:正如 @DavidCarlisle 提到的,使用 pdfLaTeX 不仅仅是使用单个 Unicode 字符的有效方法。我将编译器更改为 XeLatex,现在命令如下

\char"3042

$\text{\char"3042}:\mathb{R}\rightarrow\mathbb{R}$

可以很好地绑定我喜欢的任何unicode字符!

答案1

如果您使用 lualatex 或 xelatex,则可以使用任何涵盖日语的 Opentype 字体轻松设置

在此处输入图片描述

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Microsoft YaHei}
\begin{document}
U+3042 HIRAGANA LETTER A is [あ] [\symbol{"3042}] [^^^^3042]
\end{document}

使用 pdflatex 则更加复杂。这显示了如何制作\unisymbol{"3042}和 あ 制作相同的输出(此处为带框的 ?),因此要完成这项工作,您需要将 更改\fbox{?}为某些内容,也许\includegraphics这只是一个一次性符号,或者使用诸如\usepackage{CJK}在 pdftex 中设置日语的包。

在此处输入图片描述


\documentclass{article}
\DeclareUnicodeCharacter{3042}{\fbox{?}}

\makeatletter
\let\@@parse@XML@charref\parse@XML@charref
\let\@@parse@UTFviii@a\parse@UTFviii@a
\let\@@parse@UTFviii@b\parse@UTFviii@b
\newcommand\unisymbol[1]{\count@#1\relax\parse@XML@charref\UTFviii@tmp}
\makeatother

\begin{document}
\makeatletter
\let\parse@XML@charref\@@parse@XML@charref
\let\parse@UTFviii@a\@@parse@UTFviii@a
\let\parse@UTFviii@b\@@parse@UTFviii@b
\makeatother


U+3042 HIRAGANA LETTER A is [あ] [\unisymbol{"3042}]

\end{document}

或者您可以使用 (u)ptex,它是专门为排版日语而修改的 tex 变体。

相关内容