先日、tex-qaの方へ「BXbase/PXbaseでの半角文字の扱いに
ついて」という質問でお世話になった みずは です。
その節は大変にありがとうございました。その後、快適にplatex
を使用しています。
今日はユニコードで入力した漢字のプリントアウトについて質問
させてください(tex-qaの方では本文の全角文字が少ないという
ことで書き込みができませんでした)。
質問というのは、以下のようなtest.texを platex-utf8 で処理し、
dvipdfmxでpdfにするとに文字化けするという問題です。
\documentclass{jsarticle}
\usepackage[bxutf8]{inputenc}
\usepackage{bxbase}
\usepackage[multi]{otf}
\usepackage[english]{babel}
\usepackage[main=japanese]{pxbabel}
\begin{document}
①鄧小平
②許徳珩
③張君勱
\end{document}
cid-x-local.mapの(おそらく)関連ある部分は
%%% OTF package
hminr-h H A-OTF-RyuminPr5-Light.otf
hminr-v V A-OTF-RyuminPr5-Light.otf
otf-ujmr-h UniJIS-UTF16-H A-OTF-RyuminPr5-Light.otf
otf-ujmr-v UniJIS-UTF16-V A-OTF-RyuminPr5-Light.otf
otf-cjmr-h Adobe-Japan1-6 A-OTF-RyuminPr5-Light.otf
otf-cjmr-v Identity-V A-OTF-RyuminPr5-Light.otf
です。
dvipdfmxの関係するエラーメッセージは
** NOTICE: This document contains `Preview & Print' only licensed font **
** WARNING ** No character mapping available.
CMap name: H
input str: <2d>
** WARNING ** No character mapping available.
CMap name: H
input str: <2d>
** WARNING ** No character mapping available.
CMap name: H
input str: <2d>
のようです。
よろしくお願いします。
最新の W32TeX で試してみたら再現しました。2011/03 頃の W32TeX では正常に動作するので、pTeX の動作の変更が直接の原因ということになります。この点について、別のスレッドを立てました。
問題の性質からして、対処的処理は難しそうです。しかし、W32TeX であれば upTeX を使うのも容易なはず(フォントマップを設定するだけ)なので、upTeX の使用を試してみればいかがでしょうか。私の感覚では、「bxutf8 + otf で基本漢字外の漢字を直接入力で出す」という方法自体が、実のところ upTeX が容易に使えない環境のための次善の手段だったりします。
ご教示、感謝します。ただ、先ほどからupTeXを使う試みをしていますが、どうもフォントマップがうまく作れていないようで、以下のようなエラーメッセージに苦しんでいます。既出の問題だと思いますので、調べてみたいと思います。が、先に仕上げるべき仕事もあり、少し時間がかかるかも知れません。確認できしだい、またご報告させていただきます。
なお upTeXの Version は、3.1415926-p3.1.11-u0.30 (utf8.uptex) で、こちらも挙動が所期のものと違う、最新版と同じように、
(nkf = UTF-8 = utf8)(nkf = ISO-2022-JP = jis)(nkf = ISO-2022-JP = jis)(nkf = EUC-JP = euc)
というメッセージが出ます。
取り急ぎ、確認の遅れのご連絡まで。
name = uprml-h, rootname = uprml-h, pointsize =
mktexmf: empty or non-existent rootfile!
kpathsea: Running mktexmf uprml-h.mf
The command name is c:\tex\bin\mktexmf
Cannot find uprml-h.mf .
I try ps2pk --> gsftopk --> ttf2pk --> hbf2gf.
Current font seems to be a Japanese one.
I give up to create a PK font.
** WARNING ** Couldn't open font map file "cid-x-local.map".
test.dvi -> test.pdf
[1
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 0+555/600 --dpi 555 uprml-h
The command name is c:\tex\bin\mktexpk
kpathsea: Appending font creation commands to missfont.log.
** WARNING ** Could not locate a virtual/physical font for TFM "uprml-h".
** WARNING ** >> There are no valid font mapping entry for this font.
** WARNING ** >> Font file name "uprml-h" was assumed but failed to locate that font.
** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...
Output file removed.
なお upTeXの Version は、3.1415926-p3.1.11-u0.30 (utf8.uptex) で、こちらも挙動が所期のものと違う、最新版と同じように、
(nkf = UTF-8 = utf8)(nkf = ISO-2022-JP = jis)(nkf = ISO-2022-JP = jis)(nkf = EUC-JP = euc)
というメッセージが出ます。
取り急ぎ、確認の遅れのご連絡まで。
name = uprml-h, rootname = uprml-h, pointsize =
mktexmf: empty or non-existent rootfile!
kpathsea: Running mktexmf uprml-h.mf
The command name is c:\tex\bin\mktexmf
Cannot find uprml-h.mf .
I try ps2pk --> gsftopk --> ttf2pk --> hbf2gf.
Current font seems to be a Japanese one.
I give up to create a PK font.
** WARNING ** Couldn't open font map file "cid-x-local.map".
test.dvi -> test.pdf
[1
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 0+555/600 --dpi 555 uprml-h
The command name is c:\tex\bin\mktexpk
kpathsea: Appending font creation commands to missfont.log.
** WARNING ** Could not locate a virtual/physical font for TFM "uprml-h".
** WARNING ** >> There are no valid font mapping entry for this font.
** WARNING ** >> Font file name "uprml-h" was assumed but failed to locate that font.
** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...
Output file removed.
ここに書くのも恥ずかしいような初歩的ミスでした。以下のドキュメントを
uplatex と updvipdfmx とで処理して、所期の結果を得ることができま
した。
また角藤さんのパッケージのplatexも調整していただけるようで、嬉しく
思っています。
Z.R.さんをはじめ、皆さんのご教示に、心より感謝いたします。
---------uptest.tex-------------------
\documentclass[uplatex]{jsarticle}
\usepackage[bxutf8]{inputenc}
\usepackage{bxbase}
\usepackage[multi]{otf}
\usepackage[english]{babel}
\usepackage[main=japanese]{pxbabel}
\begin{document}
①鄧小平 --日本語
②許徳珩 --日本語
③張君勱 --日本語
④\foreignlanguage{tchinese}{蔣介石 --繁體中文}
⑤\foreignlanguage{schinese}{蒋介石 --简体中文}
⑥蒋介石 --日本語
⑦骨 --日本語
⑧\foreignlanguage{schinese}{骨 --简体中文}
\end{document}
uplatex と updvipdfmx とで処理して、所期の結果を得ることができま
した。
また角藤さんのパッケージのplatexも調整していただけるようで、嬉しく
思っています。
Z.R.さんをはじめ、皆さんのご教示に、心より感謝いたします。
---------uptest.tex-------------------
\documentclass[uplatex]{jsarticle}
\usepackage[bxutf8]{inputenc}
\usepackage{bxbase}
\usepackage[multi]{otf}
\usepackage[english]{babel}
\usepackage[main=japanese]{pxbabel}
\begin{document}
①鄧小平 --日本語
②許徳珩 --日本語
③張君勱 --日本語
④\foreignlanguage{tchinese}{蔣介石 --繁體中文}
⑤\foreignlanguage{schinese}{蒋介石 --简体中文}
⑥蒋介石 --日本語
⑦骨 --日本語
⑧\foreignlanguage{schinese}{骨 --简体中文}
\end{document}