涂鸦/ acmart中的页码

时间:2017-05-25 19:59:19

标签: racket scribble

我正在用scribble/acmart语言创建一个pdf。如何将页码添加到文档中?

2 个答案:

答案 0 :(得分:2)

  1. 使用行\settopmatter{printfolios=true}
  2. 创建一个LaTeX文件
  3. 如果文件名为texstyle.tex,请使用以下命令调用Scribble:

    scribble ++style texstyle.tex --pdf FILE.scrbl

  4. 呈现的FILE.pdf应该有行号。

    (如果您已有++style个文件,只需添加\settopmatter行即可。)

答案 1 :(得分:1)

Ben给出的解决方案是一种方式。但实际上,您可以在不修改texstyle.tex文件的情况下执行此操作。

如果您在文档中添加以下行,则相应的topmatter将添加到您的pdf文件中:

@para[#:style 'pretitle]{
 @elem[#:style "settopmatter"]{
  printfolios=true}}

你可以通过运行来看到它:

> scribble --latex myfile.scrbl

如果这样做,您会注意到pdf文件中的以下行:

\settopmatter{printfolios=true}\titleAndVersionAndAuthors{Hello}{6.9.0.4}{\SNumberOfAuthors{1}\SAuthor{World}}

(其中HelloWorld是论文的名称和作者,\title...宏运行\maketitle。)

这是有效的,因为'pretitle样式(当给出一个段落时)将其整个主体拉到标题上方。

每当给出一个字符串作为元素的样式时,它就会映射到一个latex命令。

也就是说,这个涂鸦代码:

@elem[#:style "mycommand"]{Thebody}

地图:

\mycommand{Thebody}

将这两种形式组合在一起的结果是将其拖到文件的顶部。

因为你在涂鸦而不是乳胶中完成了这个,你可以使用Racket的语义来添加页码。例如,如果您使用自己的#lang,则现在可以使用该语言来决定是否需要页面。