虽然没有方法可以通过以下方式设置图形标题前缀的样式bookdown
,可以通过应用自定义 Lua 过滤器来做到这一点(这需要pandoc
2.0 或更高版本)。
Lua-过滤器
假设您从
图 1 图标题文本。
下面的过滤器应该做你想要的(参见https://pandoc.org/lua-filters.html#inline https://pandoc.org/lua-filters.html#inline有关其他格式选项):
function Image (img)
img.caption[1] = pandoc.Strong(img.caption[1])
img.caption[3] = pandoc.Strong(pandoc.Str(string.gsub(img.caption[3].text, ":", ".")))
return img
end
(假如说img.caption[2]
是之间的空白Figure
)
另一个例子,如果你从
图 1 图标题文本。
下面的过滤器应该做你想要的(参见https://pandoc.org/lua-filters.html#inline https://pandoc.org/lua-filters.html#inline有关其他格式选项):
function Image (img)
img.caption[1] = pandoc.Strong(img.caption[1])
img.caption[3] = pandoc.Strong(img.caption[3])
img.caption[4] = pandoc.Strong(". ")
return img
end
(假如说img.caption[2]
是之间的空白Figure
以及数量和img.caption[4]
是数字和标题之间的空白)
应用 Lua 过滤器
假设您将此过滤器放置在名为的文件中figure_caption_patch.lua
在你的目录中rmarkdown
您可以通过添加一个文档来应用它pandoc
YAML Front Matter 中的参数:
output:
bookdown::word_document2:
pandoc_args: ["--lua-filter", "figure_caption_patch.lua"]
这应该会产生所需的标题样式。
图1。图标题的文本。