OTFパッケージで\ajMaruKaku{1}が表示できない。

OTFパッケージで\ajMaruKaku{1}が表示できない。

- 児島 政洋 の投稿
返信数: 8
\ajMaruKaku{1}を出力するためにOTFパッケージをインストールしたところ、\ajMaru{1}や\ajKuroMaru{1}は正常に出力できたのですが、\ajMaruKaku{1}は何も出力されません。

\ajKakuMaru{1}のような間違えた記述ではコンパイル時にエラーが出ますが、そういうエラーも無しにただ何も表示されないのです。もちろん\ajMaruKaku{2}も出力できません。

何が原因でしょうか。

お手数をお掛けいたします。

児島 政洋 への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- Z. R. の投稿

使用しているフォントは何ですか?
(「非埋込」だったらそう答えて下さい)

# OTF パッケージを使うなら、自分の使うフォント設定を把握していることが必須です。(本当は和文フォント全般にいえることですが。)

Z. R. への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- 児島 政洋 の投稿
dviファイルのプレビューにはdviout for windowsを用いています。

「Option」→「Set Parameters」で出てくるダイアログで「Font2」のタブを開き、fttの欄に
^x\map\user.map
と記入しました。

user.mapを添付いたします。

dviファイルを作成した段階で
Cannot find font file for otf-cjmr-h!
A default FONT will be used.
とのエラーが出ています。

user.map内ではotf-cjmr-hの項は
otf-cjmr-h "MS 明朝" CID2Uni
となっています。ここを
otf-cjmr-h "IPAゴシック" CID2Uni
otf-cjmr-h "IPAゴシック"
otf-cjmr-h "IPAゴシック" CID2Uni
otf-cjmr-h "IPAゴシック"
と変えてみましたが、状況は変わりませんでした。

次にコマンドプロンプトで
dvipdfmx test.dvi
としたところ、以下のようなエラーメッセージが出てPDFファイルは作成されませんでした。
[1
** WARNING ** Could not locate a virtual/physical font for TFM "otf-cjmr-h".
** WARNING ** >> This font is mapped to a physical font "HiraMinPro-W3".
** WARNING ** >> Please check if kpathsea library can find this font: HiraMinPro-W3
** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...

Output file removed.

dvioutを利用する場合のMS明朝がインストールされていないはずはないのですが、MS明朝ではでは\ajMaruKaku{1}は表示できないのでしょうか。

dvipdfmxを利用する場合のHiraMinPro-W3は、コントロールパネルからフォントのフォルダを覗く限り、そのようなフォントはインストールされていません。ただuser.map内でのフォントの記述とコントロールパネルから開いたフォントのフォルダでのフォント名は若干違うようなので、HiraMinPro-W3が別の名前で表示されていた場合、どのように確認すれば良いのか、私には分かりません。若干違うと思ったのは、user.map内で「MS 明朝」と記述されているものが、コントロールパネルから開いたフォントのフォルダでは「MS 明朝&MS P明朝」と表示されているからです。

またuser.mapではotf-cjmr-hにMS 明朝をしてあるところ、dvipdfmxのエラーメッセージではHiraMinPro-W3が出てくるあたり、dvipdfmxではuser.mapとは別のファイルでフォントを指定するのだと思われます。そこでuser.mapをdviファイルと同じフォルダに移して
dvipdfmx -f user.map test.dvi
としてみたところ
** WARNING ** Unrecognized font map option: '*'
** WARNING ** Invalid map record in fontmap line 1 from user.map.
** WARNING ** -- Ignore the current input buffer: ;;; -*- Coding: shift_jis; Encoding: Shift_JIS -*-

test.dvi -> test.pdf
[1
** WARNING ** Could not locate a virtual/physical font for TFM "otf-cjmr-h".
** WARNING ** >> This font is mapped to a physical font "HiraMinPro-W3".
** WARNING ** >> Please check if kpathsea library can find this font: HiraMinPro-W3
** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...

Output file removed.

のように余計エラーが増えてしまいました。
児島 政洋 への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- 上田 完 の投稿
dviout に関してはコメントできませんが、MS明朝を使用した場合も、IPA フォントの
場合と同様、\ajMaruKaku{1} は「半角数字の1」になるはずです。

# \ajMaruKaku{1} = \CID{11309} ですよね?
児島 政洋 への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- Z. R. の投稿

既に他の方が答えておられるように、dviout での OTF パッケージでの使用には制限があって、\ajMaruKaku{ } は正常に出力されません。(使えるのは Unicode にある文字だけです。)全ての文字を使うには dvipdfmx が必要です。

dvipdfmx を使うにしても、MS フォントや IPA フォントは、そもそも \ajMaruKaku{ } の文字を持っていないので(※)どうしても無理です。なので、その字形を含むフォントを入手するところから始めないといけません。
(※実際の理由はもう少し複雑ですが…。)

ですが、実は一つ例外があって、もし最終的に得たいものが「紙に印刷されたもの」である場合は、dvipdfmx 用に「フォント非埋込」の設定をした上で PDF を作成し、それを Adobe Reader(非埋込なのですがここでは正しく表示されるはずです)で印刷する、という方法もあります。(この PDF ファイル自体を他者に配布することは不適切です。)

Z. R. への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- 児島 政洋 の投稿
Tex Wikiの説明は良く分からなかったのですが、下記サイトを参考にしたところ、pdfdvimxで\ajMaruKaku{1}を表示できるようになりました。

http://ohtsuka.cocolog-nifty.com/blog/2010/04/otflatexfor-win.html

ありがとうございます。

児島 政洋 への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- TONE Kozaburo の投稿
お使いの環境が不明ですが,出来上がった dvi ファイルのプレビューは何をお使いですか?

例えば dviout for Windows では全ての文字を表示できません。

dvipdfmx で処理して出来上がった pdf ファイルを表示させるとどうでしょうか。
児島 政洋 への返信

Re: OTFパッケージで\ajMaruKaku{1}が表示できない。

- 上田 完 の投稿
「何も表示されない」というのがひっかかりますねえ。

Z. R. さんが既に書かれていますが、OTF パッケージを使用する場合、たとえば
IPA フォントを使用すると、\ajMaruKaku{1} は「半角数字の 1」として表示される
はずなのですが……