Pandoc Markdown для Docx с титульным листом и оглавлением на отдельных страницах

Я следовал инструкциям в этом ответе: /questions/44472631/razryiv-stranitsyi-utsenki-pandoka/44472640#44472640 и мне удалось создать и использовать фильтр для создания новой страницы, когда я захочу в конверсии из markdown в docx, С этим я смог получить "титул / титульную страницу" в docx файл. Однако при использовании --toc опция фильтр не работает. newpage не соблюдается, и после документа появляется "TOC" title т.е. на той же странице.

Есть способ конвертировать из markdown в docx в результате чего docx документ с "Обложкой / титульной страницей" и "оглавлением" (т. е. "оглавление", отображаемое на странице после "Обложки / титульной страницы")

Спасибо!

1 ответ

Решение

Существует (как минимум) два возможных метода: один, который требует изменения входного документа, и другой, где один изменяет ссылочный документ.

Добавление разрыва страницы в аннотацию

Аннотация является последним элементом перед оглавлением. Завершение реферата разрывом страницы приведет к тому, что toc запустится на новой странице:

---
title: MWE
abstract: ' `<w:p><w:r><w:br w:type="page"/></w:r></w:p>`{=openxml}'
---

Обратите внимание, что реферат может быть не пустым, но достаточно добавить один пробел без перерывов, как показано в примере выше.

Изменение ссылочного документа

Pandoc использует справочный документ при создании файлов docx. Можно создать пользовательский справочный документ и изменить стиль TOCHeader.

Создание пользовательского справочного документа требует следующих шагов:

  1. Создайте новый docx на основе стандартного справочного файла pandoc:

    pandoc --print-default-data-file reference.docx > custom-reference.docx
    
  2. открыто custom-reference.docx и измените стили в нем по своему вкусу.

  3. Передать результат через --reference-doc опция каждый раз при вызове pandoc.

    pandoc --reference-doc=custom-reference.docx …
    

    Или переименуйте файл в reference.docx и поместите его в каталог данных pandoc, чтобы он был выбран по умолчанию.

Подробности смотрите в документации о том, как изменить пользовательский стиль.

Другие вопросы по тегам