我试着从一个html页面生成pdf (角度2和高图)。
Method htmlToPdf.GeneratePdfFromFile("http://plnkr.co/edit/c4ojcIRVOOwq7xmk9kfx?p=preview",null,"export.pdf")返回空白页。
但是https://www.highcharts.com/demo/polar返回了完美的highchart。
有没有办法解决这个问题。
谢谢,
发布于 2017-05-09 20:07:27
NReco.PdfGenerator在内部执行wkhtmltopdf,并且可以呈现基于SVG的Highcharts。在您的例子中,问题出在与angular2相关的JS代码中,由于某种原因,它执行时出现错误。您可以通过添加"--javascript-debug“选项来获取此错误:
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
htmlToPdf.LogReceived += (sender,a) => {
Console.WriteLine("---> {0}", a.Data);
};
htmlToPdf.CustomWkHtmlArgs = " --javascript-debug --javascript-delay 3000 "(LogReceived处理wkhtmltopdf控制台日志中的行)。
不要忘记wkhtmltopdf是基于WebKit-Qt4.x的,它只能执行“经典的”ES5 javascript。
我可能会建议避免使用Angular2或ReactJS这样的SPA框架来生成用作PDF模板的超文本标记语言。作为替代方案,您可以在web浏览器(或nodejs)中使用Angular2生成HTML,然后将此HTML传递给PdfGenerator以生成PDF。
https://stackoverflow.com/questions/43860785
复制相似问题