2016年3月9日水曜日

LaTeXで太文字がうまく出ないときの対処方法


2月3月は卒業論文・修士論文など論文の時期ですね。

LaTeXで投稿論文や学位論文を執筆して、platexなんかを使って.dviファイルへとコンパイルしたあと、最終的に.pdfファイルに変換した結果、太字がうまく出ない(下左図)なんてことはありませんか?


この原因は、pdfにした時に必要なフォントが埋め込まれるのが一般的ですが、具体的なフォントが埋め込まれず、メタフォントが指定されるだけの場合があるからです。
埋め込みフォントを見てこうなっていたら、確実にこれが原因でしょう。



そこでフォントを埋め込む設定を行います。

※フォントにもライセンス等の権利が絡むのでむやみに埋め込むことは推奨できません。
今回はあくまでも個人利用の範囲内でフォント埋め込みをする前提で行うとします。 


そもそも埋め込みフォントを設定する便利なコマンドやツールが用意されています。
「kanji-config-updmap」(旧コマンド「updmap-setup-kanji」)で和文フォントの埋め込みの設定ができ、自動的にmapファイルというフォントの設定ファイルが生成されます。
 
ヒラギノを埋め込みたい場合は、ターミナルを開き

$ kanji-config-updmap hiragino

TeX Liveのバージョンによっては

$ updmap-setup-kanji hiragino

と入力します(パーミッションで蹴られたらsudoで行う必要あり)。


今回は以上の方法ではうまくいかない場合の対処方法を説明します。

 1. ヒラギノフォントへのシンボリックリンクの作成
dvipdfmxがヒラギノフォントを参照できるようにします。
そのために、  まずシンボリックリンクを入れるディレクトリを作成します。

$ sudo mkdir -p /usr/local/texlive/2015/texmf-dist/fonts/opentype/public/hiragino 
 部 :バージョンによって適宜変更してください)

※なお/usr/local/texlive/texmf-local/......があるならその下に入れたほうが、TeX Live自身の更新によってファイルが上書きされるリスクを回避できます。

ディレクトリ移動をして、シンボリックリンクを作成します。

$ cd /usr/local/texlive/2015/texmf-dist/fonts/opentype/public/hiragino
$ sudo ln -s "/Library/Fonts/ヒラギノ明朝 Pro W3.otf" ./HiraMinPro-W3.otf
$ sudo ln -s "/Library/Fonts/ヒラギノ明朝 Pro W6.otf" ./HiraMinPro-W6.otf
$ sudo ln -s "/Library/Fonts/ヒラギノ丸ゴ Pro W4.otf" ./HiraMaruPro-W4.otf
$ sudo ln -s "/Library/Fonts/ヒラギノ角ゴ Pro W3.otf" ./HiraKakuPro-W3.otf
$ sudo ln -s "/Library/Fonts/ヒラギノ角ゴ Pro W6.otf" ./HiraKakuPro-W6.otf
$ sudo ln -s "/Library/Fonts/ヒラギノ角ゴ Std W8.otf" ./HiraKakuStd-W8.otf

リンクができたら、パッケージデータベースの更新を行います。

$ sudo mktexlsr
または
$ sudo texhash

2. 埋め込みフォントの設定するmapファイルの書き換え
フォントの設定ファイル cid-x.mapにヒラギノフォントを設定するよう書き換えます。

まず適当なエディタで設定ファイルを開きます。

$ sudo emacs /usr/local/texlive/2015/texmf/fonts/map/dvipdfmx/cid-x.map

開いたファイルの中ほど辺りにあるrmlとgbm(メタフォント)の設定を変えます。


%% Ryumin and GothicBBB found in PostScript printers:
% rml  H Ryumin-Light      (コメントアウトする)
% gbm  H GothicBBB-Medium  (コメントアウトする)
% rmlv V Ryumin-Light      (コメントアウトする)
% gbmv V GothicBBB-Medium  (コメントアウトする)
rml  H HiraMinPro-W3.otf   (追加する)
gbm  H HiraKakuPro-W6.otf  (追加する)
rmlv V HiraMinPro-W3.otf   (追加する)
gbmv V HiraKakuPro-W6.otf  (追加する)
 
3. dvipdfmxのコンフィグファイルの書き換え
dvipdfmxによって読み込まれるmapファイルの設定を変更します。

エディタで開きます

$ sudo emacs  /usr/local/texlive/2015/texmf-config/dvipdfmx/dvipdfmx.cfg

このファイルの最後の辺りにある部分を書き換えます。

%% teTeX 2.x and TeX Live using updmap (pdfTeX format)
f  pdftex.map(コメントアウトされてたら外す)

%% Put additonal fontmap files here (usually for Type0 fonts)
f  cid-x.map(コメントアウトされてたら外す:これが追加フォントの設定)

% the following file is generated by updmap(-sys) from the 
% KanjiMap entries in the updmap.cfg file.
% f kanjix.map (コメントアウトする)

※ kanjix.mapは「kanji-config-updmap」で和文フォントの埋め込みの設定をすると自動的に生成されるmapファイル


以上の設定を行った上で、
最終的なpdfファイルのフォント属性がこうなっていたら成功です。




0 件のコメント :

コメントを投稿