如题。最近尝试折腾了下R+markdown,并通过pandoc生成docx文件,当然里面还经过了knitr的加工,因为是在RStudio中通过自带的例子实现,看不太清楚中间的过程。因为pandoc,甚至ctex都提前预装了,所以例子很容易就实现了,现在有几个稍微复杂点的设置不知如何下手。
简单的需求是这样,设置一个带红头文件的模板,标题是红色宋体,下加一条红色分割线,之后是正文,另外,正文中个别语名需要居中(如图片的描述)。
1.大致了解了些markdown的功能和特点,主要在标记,因此,排版的义务显然不在markdown了。
2.rmarkdown包有word_document函数,如对metadata相关格式的设置,这里似乎是通过传递给pandoc起作用,其中高亮的theme只有默认的几种,假如需要设置为红色高亮,似乎也不可以。另外,这些设置似乎只针对文件头,对正文也没有设置,如正文中某句话需要居中。
3.knitr的功能太强大了,可能主要支持LaTex以及图片的排版控制去了,以致于搞不懂在md到docx的文件过程中有没有相关排版功能,在stackflow上找了下,似乎提到markdown和html的排版需求,谢大直接建议跳过knitr用html的功能。
4.markdown虽然设置了一、二、三等多级标题来区分大小,但不知道有没有宏观的参数控制每级标题对应的字体大小,如一级标题为三号字体?
docx文件的页边距大小,字体大小,字体颜色、段落行距等格式具体应该在上面的哪个环节中处理?
5.考虑将红头文件先保存为图片再插入可以解决字体大小和颜色问题,但只能插入在正文中,metdata的设置就无法使用了。
PS:LaTex的强大就不用说了,这里尝试要实现的功能并不复杂,所以考虑轻量级的markdown入手。总体感觉潜力在pandoc的设置上,网上找了不少材料,但相关的不多,始终不得其解,望路过的大神指点一二,谢谢!