kenban nikki    archives   tags   

XeLaTeXで中国語と日本語を同時に使う

2020-03-11

LaTeXで英語と日本語と中国語のCVを作ったのですが、せっかくなので同じ文書内で英語と日本語と中国語をきれいに共存させる方法を調べてみました。

なんといってもキモはフォントなので、fontspecパッケージ(パソコンにインストールされたフォントを自由に指定できる)が使えるXeLaTeXを使いました。試していませんが、LuaLaTeXでも同じことができると思います。

さて、方法ですが、いたって簡単で、Pan-CJKの源ノ明朝源ノ角ゴシックをインストールした上で、xeCJKパッケージを使って指定するだけです。欧文フォントはお好きなものを指定してください。

\documentclass{article}
\usepackage{fontspec}

% Latin fonts
\setromanfont[Numbers={OldStyle},
	          Ligatures={Common}]{Minion Pro}
\setsansfont[Ligatures={Common}]{UnitOT-Medi}
\setmonofont[Scale=0.72]{Pragmata Pro}

% CJK fonts
\usepackage{xeCJK}
\defaultCJKfontfeatures{Scale=0.9}

\newCJKfontfamily[song]\songti{SourceHanSerifSC-Regular}
\newCJKfontfamily[hei]\heiti{SourceHanSansSC-Regular}
\newCJKfontfamily[mincho]\mincho{SourceHanSerif-Regular}
\newCJKfontfamily[gothic]\gothic{SourceHanSans-Regular}

% Chinese fonts
% \setCJKmainfont{SourceHanSerifSC-Regular}
% \setCJKsansfont{SourceHanSansSC-Regular}

% Japanese fonts
% \usepackage{zxjatype}
% \setjamainfont{SourceHanSerif-Regular}
% \setjasansfont{SourceHanSans-Regular}

\begin{document}

Serif
\textsf{Sans Serif}
\songti{宋体}
\heiti{黑体}
\mincho{明朝体}
\gothic{ゴシック体}

\end{document}

これで新しい命令を定義したことになるので、\songti\heiti\mincho\gothicでその部分のフォントを指定することができます。

長い文章を書きたい時は、言語にあわせてChinese fontsJapanese fontsの部分をコメントアウトすることでそのフォントがデフォルトで適用されます。ZXjatypeは内部でxeCJKを呼び出していますが、より日本語らしい組版1ができるので日本語の分量が多くなる時はこちらを使うと良いでしょう。

簡体字ではなく繁体字を使いたい時はSourceHanSerifTCSourceHanSansTC、韓国語を使いたい時はSourceHanSerifKRSourceHanSansKRを指定します。

ちなみに、たまに話題になるBiangですが、IDSを使うことでLaTeXでも表示させることができます。ただ、xeCJKはこれに対応していないらしく、うまくいきませんでした。直接fontspecから指定する必要がありそうです。

\documentclass{article}
\usepackage{fontspec}
\def\biangT{⿺辶⿳穴⿰月⿰⿲⿱幺長⿱言馬⿱幺長刂心}
\def\biangS{⿺辶⿳穴⿰月⿰⿲⿱幺长⿱言马⿱幺长刂心}
\begin{document}
  \fontspec{Source Han Serif SC}
  \biangT\biangS
  \fontspec{Source Han Sans SC}
  \biangT\biangS
\end{document}

また、源ノ角ゴシックはv2.000以降を使用してください。フォントが対応していないとこんな風になっちゃいます。

参考にしたサイト


  1. 「らしさ」なんていうのは結構厄介なので、ここでは今現在現象としてよく使われているなあ、くらいの意味です。結果としての言語らしさは存在するかもしれませんが、言語らしさの押し付け、特にネイティブから非ネイティブへのそれは、意識するかしないか、善意か否かに関わらず、無益この上ないと思います。 ↩︎