CJK (pdfLaTeX / XeLaTeX)

La voie fondée sur pTeX (pLaTeX/upLaTeX) et LuaLaTeX-ja ne sont pas les seules façons de composer du japonais. Quand vous devez utiliser pdfLaTeX ou XeLaTeX — à cause d’une classe qui les impose, ou pour un document CJK multilingue — des paquets dédiés existent : le vénérable paquet CJK (pour pdfLaTeX) et xeCJK (pour XeLaTeX). Cette page explique comment les utiliser et quand ils ont du sens.

CJK avec pdfLaTeX — le paquet CJK

Le paquet CJK (Werner Lemberg, depuis environ 1989) permet à pdfLaTeX de composer du chinois, du japonais et du coréen. On place le texte dans un environnement CJK/CJK* avec un encodage et une famille de police : \begin{CJK}{UTF8}{min} … \end{CJK} (pour UTF-8, le plus simple est de charger CJKutf8), puis on change de famille avec \CJKfamily{...}. Le paquet est toutefois en mode maintenance et largement dépassé : les LuaTeX/XeTeX/upTeX modernes gèrent Unicode et CJK nativement, et mieux. Pour un japonais plus naturel avec pdfLaTeX, BXcjkjatype (par ZR), construit au-dessus de CJK, améliore le traitement global du document et les espacements.

latex
% pdfLaTeX + CJK パッケージ
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{min}
日本語のテキスト。
\end{CJK}
\end{document}

CJK avec XeLaTeX — xeCJK / ZXjatype

XeLaTeX peut utiliser directement les polices OpenType/TrueType du système, et xeCJK ajoute la composition CJK. Définissez les polices japonaises avec \setCJKmainfont{...}, \setCJKsansfont{...} et \setCJKmonofont{...} (IPAex Mincho, Noto CJK, etc.). Par-dessus, ZXjatype (par ZR) configure xeCJK pour le japonais et fournit \setjamainfont / \setjasansfont avec une mise à l’échelle propre au japonais. C’est la voie pratique quand vous voulez XeLaTeX avec les polices système.

latex
% XeLaTeX + ZXjatype(xeCJK の上に)
\usepackage{zxjatype}
\setjamainfont{IPAexMincho}
\begin{document}
日本語のテキスト。
\end{document}

Faut-il vraiment les utiliser ?

Pour une composition japonaise sérieuse, upLaTeX ou LuaLaTeX-ja sont généralement préférables, grâce à leur gestion mature du kinsoku et des JFM. N’utilisez CJK/xeCJK que si vous êtes contraint à pdfLaTeX/XeLaTeX (classe ou modèle imposé) ou si vous travaillez avec du CJK multilingue.

  • Japonais sérieuxupLaTeX ou LuaLaTeX-ja (voir « Méthodes de composition japonaise »).
  • Contraint à pdfLaTeX → le paquet CJK (ou BXcjkjatype) ; plutôt historique.
  • XeLaTeX avec polices systèmexeCJK + ZXjatype.