当使用标记代码块时,在DOCX文档中产生的单空间字体大小太大。
我可以通过指定自定义template.docx文件来调整段落的字体大小,但由于某种原因,生成的代码块不使用段落样式,而不是大多数其他生成的输出。
有没有办法:
更新以澄清:如注释中所述,我使用的是基于以前生成的docx的外部reference.docx。通过修改heading1等的样式,我可以合理地控制输出。问题是生成的单空间文本不使用命名样式,它只是“正常”的一些变化。因此,我无法在模板中更改它,除非我也更改所有“正常”文本的大小。
发布于 2016-08-23 08:19:49
使用Pandoc 1.17.2和Word 2013,我终于找到了一个解决方案,以后的Pandoc版本似乎使用了默认隐藏在Word中的链接样式。
步骤1:使用以下方法生成自定义模板文件
pandoc -o template_1.17.2.docx test.md其中test.md包含源代码和您可能想要修改的所有其他样式。例如:
~~~~
this is preformatted source using style "Source Code"
~~~~
~~~ xml
<this> is preformatted source using "KeyworkTok" and "NormalTok"</this>
~~~在Word中打开template_1.17.2.docx。预先格式化的源现在使用隐藏链接样式“源代码”进行格式化。默认情况下,此样式不显示在“样式预览”窗格中,您可以通过单击“样式预览”面板右下角的“小方框”预览窗格来添加样式预览窗格。
根据您的意愿修改此样式,并保存模板。然后根据此模板生成文档:
pandoc --reference-docx=template_1.17.2.docx -o mydoc.docx mydoc.md现在,您应该可以看到在mydoc中正确格式化的源代码。
@LinusR建议不同的源样式使用不同的布局样式。我添加了XML作为示例。格式化的XML将使用"KeywordTok“和"NormalTok”。
发布于 2015-05-24 22:17:31
在创建DOCX (MS )文档时,Pandoc使用reference.docx文件。这必须在Pandoc命令行中给出。然后,Pandoc将从此引用DOCX中提取所有默认样式和格式设置(除非它们使用自定义名称),并将它们应用于生成的DOCX:
pandoc -t docx -o out.docx in-markdown.txt --reference-docx=my.docx实现Pandoc可用的参考文档的最佳方法是在Pandoc的帮助下生成第一个简单的DOCX,然后将其放到一个Word安装中,打开它并根据您的喜好更改您要使用的样式。然后保存它,将其带回到Pandoc,并将其用作参考。
对于ODT (LibreOffice/OpenOffice/OpenDocument),除了reference.odt (可以与--reference-odt标志一起使用)之外,还有一个模板。您可以使用pandoc -D odt打印默认模板,然后修改它并与pandoc -o out.odt --template=modifiedTemplate.odt一起使用它。
最后建议:使用最新的Pandoc版本!(目前为1.13.2.1。预计本月底将达到1.14。它的DOCX支持在最近的版本中有了很大的改进。
https://stackoverflow.com/questions/28346388
复制相似问题