【Rmarkdown】和文と英数字でフォントを使い分ける(macOS)

Rmarkdown

論文や報告書を作成する際、次のようなフォント指定を受けることは珍しくありません。

  • 英数字: Times New Roman
  • 和文: MS明朝 または MSゴシック

この記事では、Mac上でR Markdownを使い、英数字と和文でフォントを使い分ける方法を解説します。

使用環境

項目内容
OSmacOS
出力形式PDF
LaTeXエンジンXeLaTeX
エディタRStudio
使用フォントTimes New Roman・MS明朝・MSゴシック

この記事では、Microsoft Officeが既にインストールされている環境を想定しています。

MSフォントをMacに導入する

macOSにはMSフォントが標準で含まれていないため、Microsoft Office に含まれるフォントを次の手順で移植します。

  1. Finderを開き、次のフォルダを開きます
    • アプリケーション → Microsoft Office Word
    • 右クリックでshow package contents
    • Contents → Resources → Fonts
  2. msmincho.ttf, msgothic.ttf などのファイルを選択
  3. フォントブックにドラッグ&ドロップしてインストール

これで、macOS上でも MSフォントが利用できるようになります。

R Markdownでフォントを指定する

R MarkdownでPDF出力時にフォントを指定するには、YAMLヘッダー の header-includes に直接記述するか、あるいは別途用意した preamble.tex に設定を記述して読み込ませます。

フォント名を指定する際には、Macのフォントブックで確認できる「PostScript Name」を正確に記載する必要があります。

  1. フォントブックを開く
  2. 対象フォントを選択
  3. メニューから「情報を表示」を選ぶ(⌘+I)
  4. 表示される情報欄の「PostScript 名」を確認

たとえば、私の環境ではTimes New Roman の PostScript Name は "Times New Roman"、MS明朝の場合は "MS-Mincho" でした。

この名称を用いて、以下のように指定します。

---
output:
  pdf_document:
    latex_engine: xelatex
header-includes:
  - \setmainfont{Times New Roman}
  - \usepackage{xeCJK}
  - \setCJKmainfont{MS-Mincho}[AutoFakeBold=2.5,AutoFakeSlant=.3]
  - \setCJKsansfont{MS-Gothic}[AutoFakeBold=2.5,AutoFakeSlant=.3]
---
説明

xeCJKパッケージを使うことで、英数字と日本語のフォントを個別に指定できます。

コマンド説明
\setmainfont{Times New Roman}本文や数式の英数字をTimes New Romanに設定
\setCJKmainfont{MS-Mincho}日本語本文をMS明朝で表示
\setCJKsansfont{MS-Gothic}見出しや強調部分をMSゴシックで表示

MSフォントには Regular(標準) しか存在せず、太字や斜体のスタイルが用意されていません。そこで、XeLaTeXのオプションを使って擬似的に再現します。

オプション説明
AutoFakeBold=2.5線の太さを2.5倍にしてボールドを再現
AutoFakeSlant=.3文字を右に0.3傾けて斜体を再現

これらを設定することで、Office文書と同等の太字・斜体表現を再現できます。

まとめ

macOSでも、Officeからフォントを移植しXeLaTeXを活用すれば、Rmarkdownでも英数字と和文をWindowsと同じ体裁で使い分けることが可能です。

少しニッチな内容ではありますが、どなたかの研究や制作の一助になれば幸いです。

広告

Amazonアフィリエイトでブログ運営しています。
応援いただけると嬉しいです。


ネスカフェ 香味焙煎 ひとときの贅沢 スティック ブラック 20P,箱,レギュラー ソリュブル コーヒー,個包装


AHMAD TEA(アーマッドティー) クラシックセレクション ティーバッグ 20袋

タイトルとURLをコピーしました