RMarkdown

先日、htmlアウトプットのスタイル変更について書いたので、

今回はwordアウトプットのスタイル変更について。

 

htmlの場合はスタイルのcssファイルを作ってそれを参照するようにしたけど、

wordの場合は、

  1. wordファイルで自分の目的に沿ってスタイルを変更し
  2. それを.docxファイルで保存して
  3. そのスタイルを参照する

という方法をとる。

 

とゆーわけで、「wordアウトプットスタイルの変更方法」備忘録。

wordのスタイルを作る

Rmarkdownで作成し、wordで出力したものでも良いし、普通にwordファイルを開いて作っていってもOK。

論文一般のwordスタイル

フォントの大きさや行間などの指定は、ジャーナルによって若干事なるけど、概ね

  • 行間: 1.5-2.0 line
  • フォント: Times New Roman
  • サイズ: 10-12Pt
  • 論文タイトル: 12-14Pt, 太字
  • サブタイトル等: 10-12Pt, 太字

という感じ。

wordのHeading (hタグ) の割り当て

私は、

  • 論文タイトル: h1
  • IMRADのタイトル等: h2
  • IMRADのサブタイトル等: h3
  • さらに区分されたサブタイトル: h4以下

という感じに割り当てている。

 

ナビゲーションパネルを開いてみると

rmarkdown-word-style-16

こんな感じ。▼

rmarkdown-word-style-8

wrodスタイルの変更方法

各スタイル毎に設定していく。

1.「ホーム」→「スタイル」で目的のスタイルを選び、「スタイル」タブの右下にある「↘ の記号をクリック。

(今回は「Heading1」で実践。)

rmarkdown-word-style-9

2.「スタイル(Styles)」ウィンドウが開くので、Heading1の右側の「▼」をクリック。

rmarkdown-word-style-10

3.「変更(Modify)」を選択。

rmarkdown-word-style-11

4.「スタイルを変更(Modify Style)」ウィンドウが開く。

フォントの種類、色、太字等の修飾、行間などは「書式(Formatting)」のところで簡単に変更できる。

もう少し細かく変更したかったら、左下の「書式 ▼(Format ▼)」を開く。

rmarkdown-word-style-12

私の場合は、もう少し行間をカスタマイズする必要があるので、「書式 ▼ (Format ▼)」を開き、「段落(Paragraph...)」を選択。

rmarkdown-word-style-13

「段落(Paragraph)」ウィンドウがでてくるので、そこで行間やスペースなどを設定し、「OK」で設定保存。

rmarkdown-word-style-14

 

以上のような工程を、全てのスタイルで行う。

全部できたら、適当に名前をつけて(今回は "style_manuscript.docx")docxファイルで保存。

rmarkdown-word-style-15

保存先は、RMarkdownの作業ディレクトリと同じところに置いていた方が便利。

RMarkdown側でスタイル参照の指定

参照先のwordファイルがrmdファイルと同じフォルダ内にある場合

RMarkdownでこのwordスタイルを適応させたい場合、YAMLヘッダ (YAML metadata section) の、wordのoutputのところに、

reference_docx: 名前.docx

でスタイルを指定すればOK。

---
title: "Manuscript for a Journal"
author: "Me"
date: '`r format(Sys.Date(),"%B %d,%Y")`'
output:
  word_document:
    reference_docx: style_manuscript.docx
---

これで、 knit した時、カスタマイズしたスタイルを参照してくれる。

絶対パスで指定する場合

参照先のwordファイルが別フォルダにある場合は、絶対パスか相対パスで指定する。

例えば、参照先のwordファイルがDドライブ内のR/R directoryの中のフォルダ内にある場合。

---
title: "Example"
author: "mom_neurosci"
date: '`r format(Sys.Date(), "%B %d, %Y")`'
output:
  word_document:
    toc: yes
    toc_depth: '3'
    reference_docx: D:/R/R directory/フォルダ名/ファイル名.docx"
  html_document:
    number_sections: yes
    theme: cerulean
    toc: yes
    toc_depth: 3
    toc_float: yes
    css: ./Settings/"style_mn.css"
editor_options:
  markdown:
    wrap: 72
---

ファイル名の絶対パスは、下記の方法でコピペ可能▼

相対パスで指定する場合

例えば、参照先のwordファイルが、一つ上のフォルダ内の別のフォルダに収納されている場合。

---
title: "Example"
author: "mom_neurosci"
date: '`r format(Sys.Date(), "%B %d, %Y")`'
output:
  word_document:
    toc: yes
    toc_depth: '3'
    reference_docx: "../フォルダ名/ファイル名.docx"
  html_document:
    number_sections: yes
    theme: cerulean
    toc: yes
    toc_depth: 3
    toc_float: yes
    css: ./Settings/"style_mn.css"
editor_options:
  markdown:
    wrap: 72
---