2013-02-14 32 views
13

我使用降价& pandoc的科学写作时,设置双间距和行号,我知道我可以使用从降价转换为PDF pandoc

Set margin size when converting from Markdown to PDF with pandoc

但经常改变最终的PDF的利润期刊在提交的稿件中需要双行和行号,问题是如何改变这些,我对拉特克斯了解不多,所以我迷失在丛林中。

谢谢!

+1

LaTeX提供['setspace'包](http://ctan.org/pkg/setspace)以及['lineno'](http://ctan.org/pkg/lineno)。我不熟悉Pandoc的界面或用法,所以我在这里没有帮助。如果事实证明这纯粹是TeX/LaTeX问题,请考虑标记自己的帖子并请求迁移到[TeX.SE](http://tex.stackexchange.com)。不要在那里转发;而是标志着迁移。 – Werner 2013-02-15 00:41:50

回答

20

有可能一个简单的方法:生成包文件,我们需要

\usepackage{setspace} 
\doublespacing 
\usepackage[vmargin=1in,hmargin=1in]{geometry} 
\usepackage{lineno} 
\linenumbers 

我把它命名为options.sty。并使用-H FILE选项,其中包括前导码末尾的FILE内容。 (用于https://github.com/karthikram/smb_git

pandoc -H options.sty --bibliography mypaper.bib mypaper.md -o mypaper.pdf 

好处是我们不需要编辑模板。要添加亚麻布,更改边距并设置它的工作间距。

+0

@denten,它的工作方式很好 – 2015-08-24 15:13:33

+0

是的,你是对的!输出文件遵循-o。删除以避免混淆。 – denten 2015-08-25 02:46:36

12

您需要使用自定义的LaTeX模板。首先,使用pandoc创建默认模板的副本:

pandoc -D latex > mytemplate.latex 

现在编辑此模板。某处在序言(\documentclass{...}\begin{document}之间),插入线

\usepackage{setspace} 
\doublespacing 

然后,使用自定义模板:

pandoc --template mytemplate.latex mypaper.txt -o mypaper.tex 
+0

添加行号我读了'lineno'包文档,但无法弄清楚如何添加它们。 – Leosar 2013-02-17 18:51:55

24

在最新版本的Pandoc中,您可以使用YAML header并在其中包含一堆元数据,而不是在命令行上使用选项。所以,举例来说,你可以在你.md文件的顶部把这个:

--- 
title: The Document Title 
author: 
    - Your Name 
    - Co Author 
date: \today{} 
geometry: margin=2cm 
header-includes: 
    - \usepackage{setspace} 
    - \doublespacing 
    - \usepackage{lineno} 
    - \linenumbers 
--- 

Document Text 

和pandoc会读这些选项,并自动应用它们。