WSL 上の uplatex と dvipdfmx から UD 教科書体を使いたい。
TeX Wiki での情報は以下
pxchfon の説明
- Qiita / @zr_tex8r / 2020-12-25: Update: 2021-11-30: 徹底攻略! pxchfonを使いこなそう
に従い
\documentclass[uplatex,jis2004,a4paper]{article}
\usepackage[uplatex,deluxe]{otf}% 多ウェイト化
\usepackage[noalphabet,unicode]{pxchfon}
\setminchofont[0]{UDDigiKyokashoN-R.ttc}% UDデジタル教科書体N-R
\setboldminchofont[0]{UDDigiKyokashoN-B.ttc}% UDデジタル教科書体N-B
みたいにしてみると
$ dvipdfmx marksheet.dvi
marksheet.dvi -> marksheet.pdf
[1
dvipdfmx:fatal: Failed to read UCS2/UCS4 TrueType cmap...
No output PDF file written.
make: *** [Makefile:9: marksheet.pdf] Error 1
rm marksheet.dvi
みたいなエラーになる。
unicode を外して
\documentclass[uplatex,jis2004,a4paper]{article}
\usepackage[uplatex,deluxe]{otf}% 多ウェイト化
\usepackage[noalphabet]{pxchfon}
\setminchofont[0]{UDDigiKyokashoN-R.ttc}% UDデジタル教科書体N-R
\setboldminchofont[0]{UDDigiKyokashoN-B.ttc}% UDデジタル教科書体N-B
みたいにすると、
dvipdfmx marksheet.dvi
marksheet.dvi -> marksheet.pdf
[1
dvipdfmx:warning: Could not locate a virtual/physical font for TFM "uphminrn-h".
dvipdfmx:warning: >> This font is mapped to a physical font "UDDigiKyokashoN-R.ttc".
dvipdfmx:warning: >> Please check if kpathsea library can find this font: UDDigiKyokashoN-R.ttc
dvipdfmx:fatal: Cannot proceed without .vf or "physical" font for PDF output...
No output PDF file written.
make: *** [Makefile:9: marksheet.pdf] Error 1
みたいなエラーになる。
どちらの場合も、.ttc が見つからないことが原因らしく、UDDigiKyokashoN-R.ttc, UDDigiKyokashoN-B.ttc を ./ の置いておけばすんなり通るのだが、WSL だと共有フォルダ等には symbolic link を置けないので、フォントファイルの実物をコピーする必要があり具合があまりよろしくない。
/ や ~/ 以下には symbolic link 置けるのでこの下に symbolic link をと思ったのだが、どこに作れば良いのか皆目見当が付かず往生した。
結論としては、
kpsewhich -show-path=.ttc
kpsewhich -expand-braces=\$TTFONTS
等で、.ttc や TrueType フォントの検索パスを確認して、そこに symbolic link 放り込んでおけばよいだけだったのだが、これがさっぱり見つからず困り果てた。
一応
の末尾に
TFM ファイルの検索パスがどう設定されているのか知るには
kpsewhich -show-path=tfm
のようにします。
みたいなほぼ正解に近い記述があるのだが、-show-path=ttc ではなく -show-path=.ttc や -expand-braces=\$TTFONTS ってしないと動いてくれなくて、この書き方もたどり着くまで方々を探し回る羽目に。
以下で見つけた。
- TeX Forum / QA / フォーラム / 一般フォーラム / フォントの埋め込みがうまくいかない