Help us understand the problem. What is going on with this article?

MacユーザがLaTeXでPDFにMSフォントを埋め込む方法

More than 3 years have passed since last update.

某研究会に原稿を投稿する際、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なら以下のようになっています。

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を使うようです。

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フォントを埋め込むフォントマップを指定します。

sample.tex
\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を開いて、ファイル>プロパティ>フォントを見てください。所望のフォントが「埋め込みサブセット」となって入れば埋め込み成功です。

kanejun
情報系大学院生→ITコンサルとSEのハイブリッドとして生きる会社員
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away