如何在Rotativa生成的PDF中显示分页符

时间:2014-03-10 15:54:20

标签: asp.net-mvc pdf rotativa

在我的ASP.NET MVC 4应用程序中,我有一个索引视图,其中嵌入了几个部分视图。我通过NuGet安装了Rotativa的最新版本1.6.1。现在我可以使用Rotativa将索引页打印到PDF。我想在每个局部视图后在PDF中有一个分页符。如何使用Rotativa实现这一目标?

我尝试关注this example以使用CustomSwitches,但似乎没有一个用于分页符。我使用this article生成PDF

4 个答案:

答案 0 :(得分:25)

如果您使用的是1.6.1,您可以在CSS中添加分页符(这在1.5.0中不能始终如一,我没有测试过1.6.0)

所以添加这种风格,而不是像p.breakhere {...}这样的特定元素,但如下所示(某些人对特定元素有问题)

<STYLE TYPE="text/css">
 .breakhere { page-break-after: always }
</STYLE>

然后在你的html中执行此操作

<P CLASS="breakhere">

它应该很好地打破。请注意1.6.1有一个Ghosted图像的错误,间歇性... 请参阅此SO条目Link

答案 1 :(得分:7)

答案是正确的,但你必须以不同的方式这样做:

1110:1100

这就是诀窍!

希望有所帮助!

答案 2 :(得分:4)

您可以使用这三个CSS代码中的任何一个来设置元素的分页符,

page-break-after
page-break-before
page-break-inside

根据你的情况。

答案 3 :(得分:2)

This works every time for me and in all browsers. My application is ASP.NET MVC3 Razor.

In your style sheet (.css) or in a style tag put this:

@media all {    .page-break { display: none; } }

@media print {  .page-break { display: block; page-break-before: always; } }

Where you want your page to break put this:

<div class="page-break"></div>

Works perfect in all browsers