Rotativa ViewAsPDF CSS尺寸/尺寸

Mar*_*sar 10 asp.net-mvc asp.net-mvc-4 rotativa

我使用Rotativa ViewAsPdf方法将ASP.Net MVC中的HTML视图渲染为PDF .我通过设置以下设置输出为A4尺寸,纵向和无边距:

new ViewAsPdf(MVCCfpFormatter.Members.Views.FlightPlansFullPagePrint, model)
                    {
                       // FileName = flightPlan.ListingItemDetailsModel.FlightDetails + ".pdf",
                        PageSize = Size.A4,
                        PageOrientation = Orientation.Portrait,
                        PageMargins = new Margins(0, 0, 0, 0),
                        PageWidth = 210,
                        PageHeight = 297
                    };
Run Code Online (Sandbox Code Playgroud)

然后在CSS中,我设置一个具有210mm宽度的元素,它应该扩展页面的整个宽度,但在输出PDF中,210mm宽度不是表示PDF的整个宽度而是更少.通过反复试验,生成的PDF的总宽度似乎在附近246mm.

任何想法为什么会发生这种情况?

小智 12

如果你还有问题,我已经对rotativa做了更多的研究.您可以使用wkhtmltopdf中的自定义开关.尝试并添加

CustomSwitches = "--disable-smart-shrinking". 
Run Code Online (Sandbox Code Playgroud)

这会阻止程序自动调整大小.从那里你可以正确调整你的html页面,以获得你想要的PDF格式.


小智 5

我想我可以帮你。

 {
               FileName = Name + ".pdf",
               PageOrientation = Rotativa.Options.Orientation.Landscape,
               PageSize = Rotativa.Options.Size.A4

 }
Run Code Online (Sandbox Code Playgroud)

1.6.3 对我有用吗?我想您需要遵循该语法来设置您想要的其他内容。