我正在用C#编写一个Web服务,使用NReco.PdfConverter
和wkhtml
将网页转换为PDF文件。获取页面的整个HTML + CSS + JS,并将其发送到Web服务
网页(在SharePoint上)需要授权,并且还包含用户需要填写的表单,因此Web服务不能简单地访问该网页的URL并下载它。
JavaScript和CSS文件对于正确呈现表单也很重要,包括来自SharePoint的数十个JS文件和样式表。
到目前为止,我最好的想法是这样的:
当用户点击“生成PDF”,JavaScript就整个当前页面转换成一个字符串(附加的CSS文件和JS文件内联);
POST
该字符串使用$.ajax()
的web服务。使用
NReco.PdfConverter
,实在是小巫见大巫到字符串转换为PDF文件,并保存到文件:var converter = new HtmlToPdfConverter { Margins = new PageMargins { Top = 0, Bottom = 0, Left = 0, Right = 0 }, CustomWkHtmlArgs = "--print-media-type" }; converter.GeneratePdf(htmlContent);
一个将如何平衡的办法产生一个单页的HTML的想法(包括复选框的状态,表单中的文本等)在浏览器中?
这是非常复杂的事情吗?有人知道另一种解决方案吗?
与CustomWkHtmlArgs工作= “--username LOGIN --password PASS” – K48
我添加的代码段为基本身份验证答案 –