为分页符实现CSS样式“破坏” R Markdown中的目录

时间:2019-01-23 17:22:50

标签: html css r markdown wkhtmltopdf

由于使我的文档在knitr导出为pdf时看起来很麻烦,我正在通过wkhtmltopdf cmd line实用工具将Markdown项目的html文件转换为pdf。

一个非常基本的Markdown文档复制了我的问题:

---
title: "Untitled"
output: 
  html_document:
    df_print: paged
    toc: true
    number_sections: true
---

## ALPHA Header

### Alpha sub-1

### Alpha sub-2

## BETA Header

### Beta sub-1

### Beta sub-2

这会生成带有目录的html文件-但是当我通过wkhtmltopdf转换此文件时,没有分页符。

我从this Github查询中获取答案,试图实现推荐的自定义CSS样式类型。注意,我不太了解html / CSS。

我通过以下方式修改了YAML(保持不变)之后的降价代码:

<style type="text/css" media="screen,print">
       /* Page Breaks */

/***Always insert a page break before the element***/
       .pb_before {
           page-break-before: always !important;
       }
</style>

<div class="page1 pb_before">
## ALPHA Header
</div>
<div class="page2 pb_before">
### Alpha sub-1
</div>
<div class="page3 pb_before">
### Alpha sub-2
</div>
<div class="page4 pb_before">
## BETA Header
</div>
<div class="page5 pb_before">
### Beta sub-1
</div>
<div class="page6 pb_before">
### Beta sub-2
</div>

编织此版本时,标题和目录的编号系统消失了,但是现在当我通过wkhtmltopdf将html文件转换为pdf时,每个标题分别得到一个单独的页面。

所以我的问题是-如何将两者综合在一起,从而在导出到html之后具有目录和带编号的标头,并且准备了html / CSS代码以允许我在每个标头后进行分页当我通过wkhtmltopdf进行转换时。

1 个答案:

答案 0 :(得分:0)

我为此找到了一个骇人听闻的解决方案:

插入:

<div class="page1 pb_after">
&nbsp;
</div>

在每个标题之前,我都需要一个单独的页面。