Как не указывать название, автора, дату в теле документа Word, скомпилированного из книги? - PullRequest
0 голосов
/ 29 апреля 2019

Я в организации, которой нравится втискивать как можно больше информации на каждую страницу документа Word. Например, они предпочитают показывать название документа, дату, автора в верхних и нижних колонтитулах, а не в теле документа. Я могу отобразить эти поля в верхних и нижних колонтитулах документа Word, скомпилированного из книги, создав шаблон .docx и добавив коды полей Word TITLE, CREATEDATE и AUTHOR в нужные места в верхних и нижних колонтитулах шаблона .docx. Это прекрасно работает. Но проблема в том, что когда я компилирую в Word, заголовок, дата и автор по-прежнему отображаются в теле документа Word. Это сохраняется, даже если я удаляю их из тела шаблона .docx. Да, я могу легко удалить их из выходного документа Word, прежде чем делиться ими. Но было бы неплохо, если бы у меня был один шаблон .docx, в котором все было правильно. Есть ли простой способ сделать это?

ОБНОВЛЕНИЕ: я не хочу оставлять поля title, date и author пустыми в заголовке YAML Rmd, потому что я все еще хочу, чтобы они появлялись в определенных местах в верхних и нижних колонтитулах документа выводить и отображать как обычно в выводе pdf.

1 Ответ

1 голос
/ 10 мая 2019

Дело 1

Если вы просто оставите поля заголовка, автора и даты пустыми в yaml, они не будут отображаться в выходных данных. Вот воспроизводимый пример. Я использую шаблон из пакета bookdownplus:

bookdownplus::bookdownplus('demo', to = 'demo', more_output = 'word_document2')

В папке 'demo' вы можете редактировать заголовок yaml для index.Rmd следующим образом:

title:
author:
date:

Создайте книгу, и вы получите документ в формате MS Word без названия, автора и даты.


Дело 2

Если эти поля нужны только для вывода html или pdf, кроме слова document, используйте |:

title: |
  | "title"
author: |
  | "author"
date: |
  | "`r Sys.Date()`"

Затем заголовок, автор и дата появятся в выходных файлах pdf и html и исчезнут в выходных данных MS-Word.


Дело 3

Если вы хотите, чтобы заголовок, автор и дата отображались только в верхнем / нижнем колонтитуле документа Word, вы можете воспроизвести некоторые приемы в шаблоне слова. Например, вы можете скрыть их вручную следующим образом:

  • Откройте шаблон Word с помощью MS-Word
  • Нажмите Ctrl + Shift + S, чтобы открыть панель инструментов Apply Styles.
  • Выберите поле, скажем, Title и нажмите Modify.
    • Изменить цвет шрифта на цвет фона (обычно «белый»).
    • Нажмите Format - Paragraph. Установите Spacing в качестве 0 и Line Spacing в качестве наименьшего значения.
    • Нажмите OK.
    • Снова нажмите OK.
  • Теперь заголовок скрыт. Да, это все еще там, но никто не может видеть это. Сохраните шаблон.

Теперь используйте этот шаблон для уценки. Название будет отображаться так, как вам нравится.

...