如何在子模块中使用特殊的 utf-8 字符?

如何在子模块中使用特殊的 utf-8 字符?

在我的论文(我使用 LaTeX 的第一个实际项目)中,我需要日语和一些俄语字符。我将论文按子模块划分。我的主要模块如下所示:

 \documentclass[11pt]{article}

 \usepackage{amsmath}
 \usepackage{amssymb}
 \usepackage{graphicx}
 \usepackage[utf8]{inputenc}
 \usepackage[T1]{fontenc}
 \usepackage{CJK}

 \includeonly{spis_tresci}

 \begin{document}

 % Definition of title and author
 \title{ My Thesis title. }
 \author{Mazeryt Freager \\
 \\
 \begin{CJK*}{UTF8}{min}
  一部の日本人のもの
 \end{CJK*}
 \\ śćóœ}
 \maketitle

 \clearpage 

 \input{Table_of_Contents}

 \end{document}

上面的代码运行正常。问题出在子模块“目录”中

 \section{Table_of_Contents}

 %When I add here something more than ASCI code I got into compilation failure
 %No mather if it is:
 %\begin{CJK*}{UTF8}{min}
 %一部の日本人のもの
 %\end{CJK*}
 %\\ śćóœ}
 abcdefghijklmnoprstuwxyzABCDEFGHIJKLMNOPRSTUWXYZ
 %but standard ASCI works

我对此进行了大量搜索,但没有找到适合我的解决方案。有什么想法吗?

答案1

我认为问题在于对环境使用的误解CJK- 正如@egreg所说,它无法启用和禁用。只需将整个文档放在一个CJK环境中,然后在使用时CJKutf8(参见这里无论有什么区别)使用拉丁文字但在 ASCII 之外的 utf8 字符就可以了。

因此,固定版本的 MWE 将是:

\documentclass[11pt]{article}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{CJKutf8}

\begin{document}

% Definition of title and author
\begin{CJK*}{UTF8}{min}
\title{My Thesis title.}
\author{Mazeryt Freager\\ \\一部の日本人のもの\\śćóœ}
\maketitle

\clearpage 

\input{Table_of_Contents}
\end{CJK*}
\end{document}

其中 `Table_of_Contents.tex' 具有以下内容:

一部の日本人のもの\\
Polish characters are: ąćśżźółęń\\
ASCII: abcdefghijklmnoprstuwxyzABCDEFGHIJKLMNOPRSTUWXYZ

输出在标题页上:

封面

第一页

在第一页。

相关内容