某研究会に原稿を投稿する際、MS明朝とMSゴシックを埋め込めと指定があったので設定しました。
ただし、LaTeXを使って作る全ての書類がダサいMSフォントになるのは勘弁なので、ファイルごとにフォントを変えられる設定をします。
環境
- OS: macOS Sierra
- Tex ディストリビューション: TexLive (2016)
- TeXエンジン: pLaTeX
今回はエディタには非依存ですが、参考までにTexPadを紹介しておきます。めちゃくちゃ便利なTex用エディタです。
Texpad · Smoothest way to write LaTeX
はじめに
日本語フォントは、フォントマップと呼ばれるマップファイルに、文書中の明朝体とゴシックをどのフォントファイルを対応づけるか記述して指定しているようです。
どのフォントマップを利用してフォントを埋め込むかは、
sudo kanji-config-updmap-sys status
で確認できます。ただし、これはdvipdfmxを利用して生成される全てのPDFに適応される設定です。
フォントマップの中身は、デフォルトで設定されているipaexのマップファイルptex-ipaex.mapなら以下のようになっています。
rml H :0:ipaexm.ttf
gbm H :0:ipaexg.ttf
rmlv V :0:ipaexm.ttf
gbmv V :0:ipaexg.ttf
つまりrmlは明朝体、gbmはゴシックの指定です。この例なら、明朝体はipaexm.ttf、ゴシックはipaexg.ttfというフォントファイルとマッピングされています。
HとVは、何を意味するか知らなくてもフォント埋め込みできたので調べてないです。
MSフォントを埋め込むフォントマップはデフォルトでTexLiveにあります。
/usr/local/texlive/2016/texmf-dist/fonts/map/dvipdfmx/jfontmaps/ms/
の中です。
4種類ありますが、どうやらpLaTeXではptex-ms.mapを使うようです。
rml H :0:msmincho.ttc
rmlv V :0:msmincho.ttc
gbm H :0:msgothic.ttc
gbmv V :0:msgothic.ttc
ちなみに、自分でマップファイル作った時は、/usr/local/texlive/texmf-local/fonts/cmap/
に入れて、sudo mktexlsr
を実行すればいいみたい。
Texファイルへの記述
Texファイルのプリアンブルで、dvipdfmxに対してMSフォントを埋め込むフォントマップを指定します。
\AtBeginDvi{\special{pdf:mapfile ptex-ms.map}}
このように書くだけです。
フォントファイルの設置
これだけでは、MS明朝とMSゴシックのフォントファイル(msmincho.ttcとmsgothic.ttc)が見つからないと言われることがあります。その時は、/usr/local/texlive/texmf-local/fonts/truetype/
の中にフォントファイルをぶち込みましょう。ディレクトリtruetypeがない場合はmkdir
で作りましょう。
ちなみに、/usr/local/texlive/2016/texmf-dist/fonts/
の下に置かないのはTexLiveのアップデート時に消されないようにするためです。
フォントファイルは、MicrosoftOfficeをインストールする時にフォントも一緒にインストールしている場合は、Macがシステムで管理しているフォントフォルダ内にあるはずです(場所は調べてください)。私の場合は、MicrosoftOfficeはインストールしたものの、フォントをシステムにインストールしていなかったので少し面倒でした。その場合は、MS明朝は/Applications/Microsoft\ Word.app/Contents/Resources/Fonts/msmincho.ttc
に、MSゴシックは
/Applications/Microsoft\ Word.app/Contents/Resources/DFonts/msgothic.ttc
にあります。
Finderからでも、ApplicationsフォルダでWord.appを右クリック(Ctl+クリックまたはトラックパッドを二本指クリック)して「パッケージの中身を表示」でたどり着けます。あと、WordじゃなくてもExcelでもPowerPointでもOK。
最後に、更新のためのコマンドを実行します。
sudo mktexlsr
埋め込まれたことの確認
Adobe Acrobat ReaderでPDFを開いて、ファイル>プロパティ>フォントを見てください。所望のフォントが「埋め込みサブセット」となって入れば埋め込み成功です。