自动分页、页脚、页面边距
默认状态下,Sparks NMN 不会对乐谱进行分页,因此也不会标注页脚或页码。打印时,浏览器将负责对乐谱进行分页,而这种分页方法非常粗糙,可能对可读性产生不利影响(尤其是声部较多时)。
只须指定页面大小,Sparks NMN 就会对乐谱进行自动分页,并添加页码。页面底部的多余空间将均匀分配到乐谱行间距中(最后一页除外),使得乐谱匀称而美观。
本节中涉及这些渲染属性:
名称 | 类型 | 说明 | 默认值 |
---|---|---|---|
page | page | 页面高度与宽度之比 | 0 |
double_sided | boolean | 分页时假设双面打印 | false |
page_margin_x 新增于 1.15.8 | 2numbers | (11)页面左侧和右侧的边距 | 11,11 |
它们都只能在 Rp:
开头的全局渲染属性中使用。
定宽度显示机制
此前,我们提到了 Sparks NMN 使用的布局单位 em
,等于除去页面边距后的页面宽度的 。事实上,Sparks NMN 的显示机制像图片一样,一切都以页面宽度为单位。
例如,音符高度始终约等于页面宽度的 ,那么在 A4 纸(宽度 )上,音符高度约为 ;在 A5 纸(宽度 )上,音符高度会变成大约 。
要改变 em
相对于页面宽度的大小,应当修改控制文档缩放的渲染属性 scale
。
指定页面大小
无论指定什么页面大小,只要不修改 scale
渲染属性,em
始终是除去页面边距后的页面宽度的 。因此,指定页面大小,实际指 定的是页面高度与宽度的比值,以告诉 Sparks NMN 应该在何处分页。
指定页面长宽比,可以通过 page
渲染属性:
名称 | 类型 | 说明 | 默认值 |
---|---|---|---|
page | page | 页面高度与宽度之比 | 0 |
有三种可能的指定方法:
- 使用预设的纸张
A2
—A6
或者B3
—B5
。A 系列的纸张长宽比为 1.4142,B 系列为 1.4157。 - 输入纸张的长度和宽度,例如
27.9/21.0
。 - 直接给出纸张的长宽比,例如
1.4142
。
例如《数鸭子》乐谱,
在使用长宽比 0.707 的纸张分页后,预览将会显示为:
这时编辑器中的「粗排模式」字样会变成「共2页」,说明现在分页由 Sparks NMN 在预览时自动处理。
使用相匹配的纸张大小进行打印,即可得到经过布局调整且包含页码的纸质乐谱。
打印选择的纸张必须与渲染属性相匹配(相近,不需要严格相等)。如果纸张大小不匹配,可能导致页脚或乐谱错位。
由于一些神奇且无法解释的问题,Firefox 浏览器无法自动设置正确的打印边距,需要手动调整。若使用基于 Chromium 的浏览器,只须在页 面边距处选择「默认」即可正确排版。
指定水平页面边距
新增于 1.15.8
Sparks NMN 提供了一个渲染属性用来改变水平方向的页面边距,其单位也是 em
。
名称 | 类型 | 说明 | 默认值 |
---|---|---|---|
page_margin_x | 2numbers | (11)页面左侧和右侧的边距 | 11,11 |
逗号隔开的两个数字用来分别指定左侧和右侧的边距,注意逗号后不能有空格。如果左右边距相等,可以只写一个数,例如 11
等价于 11,11
。
默认的竖直方向的边距目前还不支持修改,如果有需要,可在打印时在浏览器中设定。
自定义页脚文本
可以通过在文档开头添加信息行实现自定义页脚文本。
头部信息 | 说明 | 全称 | 格式 |
---|---|---|---|
页脚左侧文本 | DocLeft | Dl: <文本> | |
页面右侧文本 | DocRight | Dr: <文本> |
页脚文本中可以添加页码,${0}
表示当前页码,${1}
表示总页数。页脚右侧文本的默认 值是 Page ${0} / Total ${1}
。
双页对开
如果你的乐谱是在纸上双面打印,请开启下面的渲染属性。
名称 | 类型 | 说明 | 默认值 |
---|---|---|---|
double_sided | boolean | 分页时假设双面打印 | false |
此时,偶数页面上的左右两侧边距和页脚文本都会对调。在这种情况下,让左侧页面边距大于右侧是很有意义的——可以在需要装订的一侧留出较大边距,防止装订后边缘上的音符难以阅读,但同时不会让另一侧有过大空白。
下面的例子中,两侧页面边距为 14,10
。
接下来...
你可能觉得 Sparks NMN 的默认排版有些「浪费纸」。一定程度上,这可以通过调节间距缓解。我们要介绍控制行距与段落间距的方式了。