IPAex フォントを CJK パッケージ用に変換した Type1 フォント群を収めた ipaex-type1 パッケージを更新した。
- Package ipaex-type1 (CTAN) 0.4 版。
IPAex フォント Ver.003.01 に対応
従来は、変換元として Ver.002.01 を使っていたが、0.4 版では、2015 年 10 月にリリースされた Ver.003.01 の IPAex フォントから変換を行った。*1
非 BMP の文字に対応
IPAex フォントは JIS X 0213 対応のフォントなので BMP 外にある漢字(〈𡈽〉(U+2123D)など)を多数収録している。従来の版では BMP の範囲内のサブフォントのみを提供していたが、0.4 版では BMP 外の範囲に対するサブフォント(ipxm-r-u0200.pfb 等)が追加された。
現在の CJK パッケージは BMP 外範囲に対応しているので、ipaex-type1 のファミリを利用して BMP 外の文字を文書中に普通に書くことが可能になっている。
% pdfLaTeX 文書, UTF-8 \documentclass[a4paper]{article} \usepackage{CJKutf8,CJKspace,CJKpunct} \begin{document} Now you can use non-BMP kanji:\par \begin{CJK*}{UTF8}{ipxm}% % 𡈽=U+2123D; 𠀋=U+2000B; 𠮟=U+20B9F 𡈽屋𠀋二さんが𠮟られた。 \end{CJK*} \end{document}
LaTeX パッケージを提供
主な目的が CJK パッケージの枠組で使うことであり必要性があまり高くない((例えば「\CJKfamily{ipxg}
」でファミリを切り替えられるので、それ以上に簡単にする必要はないだろう。))ため、今までは特に“便利なインタフェース”のための LaTeX パッケージは用意していなかった。しかし今回の 0.4 版では新たに LaTeX パッケージ(ipaex-type1 パッケージ)を提供することにした。
パッケージの読込はいつもの通りで、オプションはない。
\usepackage{ipaex-type1}
次のような命令が提供される。
\ipxmfamily
/\ipxgfamily
: 欧文と和文のファミリを ipxm(IPAex明朝)/ipxg(IPAexゴシック)に切替。\textipxm{...}
/\textipxg{...}
: 前項のテキスト命令版。\CJKipxmfamily
/\CJKipxgfamily
: 和文のファミリを ipxm/ipxg に切替。\textCJKipxm{...}
/\textCJKipxg{...}
: 前項のテキスト命令版。
% pdfLaTeX 文書, UTF-8 \documentclass[a4paper]{article} \usepackage{CJKutf8} \usepackage{ipaex-type1} \begin{document} Here's an example:\par \begin{CJK}{UTF8}{ipxm}\CJKtilde {\TeX}~はアレ % 和文=IPAex明朝, 欧文=CM Roman \textipxm{{\TeX}~はアレ} % 和文=欧文=IPAex明朝 \textipxg{{\TeX}~はアレ} % 和文=欧文=IPAexゴシック \textCJKipxg{{\TeX}~はアレ} % 和文=IPAexゴシック, 欧文=CM Roman \end{CJK} \end{document}
CJK 環境の外、およびそもそも CJK パッケージを使わない場合は、欧文に対する指定のみが有効になる。
% pdfLaTeX 文書, UTF-8 \documentclass[a4paper]{article} % CJK パッケージ無し! \usepackage{ipaex-type1} \begin{document} % 欧文ファミリを切り替える CM Roman, \textipxm{IPAex Mincho}, \textipxg{IPAex Gothic}, and again CM Roman. That command does \textCJKipxg{nothing}. % "和文"はないので無意味 \end{document}
ただしこの原則には一つ例外がある。以下で説明する。
\textCJKipxm/\textCJKipxg 命令
CJK パッケージが読込済でかつ CJK 環境の外で \textCJKipxm
/\textCJKipxg
命令を使った場合、引数のテキストが自動的に CJK* 環境の中に入れられる。「欧文文書で時々日本語の語句を含める」というような場合に、CJK* 環境の短縮形として使用することができる。
% pdfLaTeX 文書, UTF-8 \documentclass[a4paper]{article} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage{CJKutf8} \usepackage{ipaex-type1} \begin{document} I believe in {\TeX}, because it is \textCJKipxm{アレ}. \end{document}
\ipxmsymbol/\ipxgsymbol 命令
\ipxmsymbol{符号値}
/\ipxgsymbol{符号値}
で、当該の Unicode 符号値をもつ文字を出力できる。例えば、\ipxmsymbol{"2603}
で〈☃〉(U+2603)が出力される((〈"
〉は 16 進表記を表す。))。これらの命令は CJK パッケージを使用しない場合でも使用できる。% pdfLaTeX 文書, UTF-8 \documentclass[a4paper]{article} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage{CJKutf8} \usepackage{ipaex-type1} \begin{document} I like \ipxmsymbol{"26C4}, but I like \ipxmsymbol{"2603} better. \end{document}
*1:ただし、この「元の IPAex フォントの更新」に関する機能的な差異はほとんどない。