Word模板

使用模板

如果你想自定义MS Word输出的外观,Pandoc支持一种特殊类型的模板,称为参考文档。以下是指定自定义参考文档的示例,适用于docx格式:

format:
  docx:
    reference-doc: custom-reference-doc.docx

参考文档包含了使用Pandoc所有输出样式的示例文本。

要使用参考文档模板,只需将其复制到你的文档目录中,并按上述方式引用它。

创建模板

要基于Pandoc默认值创建一个新的参考文档,请执行以下命令:

$ quarto pandoc -o custom-reference-doc.docx \
   --print-default-data-file reference.docx

然后,在MS Word中打开custom-reference-doc.docx,并根据需要修改样式:

Microsoft Word文档打开的截图,样式窗格在文档左侧打开。

你可以从MS Word工具栏的“主页”选项卡打开样式窗格。

当你将光标移到文档中的特定元素时,样式列表中的相应项目将被高亮显示。如果你想修改任何类型元素的样式,可以点击高亮项目上的下拉菜单,你会看到一个类似这样的对话框:

修改样式对话框,包含选择要样式化的属性和选择样式设置的格式化部分。格式化部分中的颜色选择下拉菜单已打开。

完成样式修改后,你可以保存文档,并将其用作未来Word文档的模板。

应用自定义样式

Pandoc为段落或代码块等元素提供了默认样式,并为粗体等内联元素提供了默认格式。可以使用div为块元素和span为文本定义自定义样式,从而使用特定样式而不是默认样式。

通过在默认或用户提供的参考文档中定义的样式名称设置custom-style属性。

例如,这将应用名为Emphasis的文本样式到Get out文本,而不是默认的文本样式:

[Get out]{custom-style="Emphasis"}, he said.

这将把名为Poetry的段落样式应用到Div(:::)内的内容:

Dickinson以简单的开篇开始这首诗:

::: {custom-style="Poetry"}
| A Bird came down the Walk---
| He did not know I saw---
:::

如果reference.docx文件中尚未包含这些样式,它们将以标准文本作为基础样式添加到输出文件中。如果样式已经定义,它们的定义将不会被修改。

一个可能的工作流程是:

  1. 创建一个文档,为所有需要的样式设置custom-style
  2. 渲染此文档,以便在输出文档中创建样式,
  3. 将此文档保存为未来渲染的参考文档

这确保了custom-style中使用的样式名称与参考文档中定义的样式名称完全匹配。

总的来说,此机制通过允许作者在参考文档中定义新样式,实现了极大的自定义。对于高级用户,这可以结合过滤器来将custom-style属性应用于文档中经过过滤的元素集合。