c# mvc nreco HtmlToPdfConverter 问题将 html 文档转换为 pdf
c# mvc nreco HtmlToPdfConverter issue converting html document to pdf
我正在使用 nReco HtmlToPdfConverter class 尝试将 html 文档转换为 pdf。除了一个例外,这工作正常。我有 javascript,它是 document.ready 上的 运行,并且 javascript 在 html 转换为 pdf 时未呈现,导致我的条形码(由我的 javascript) 制作,未在 PDF 中呈现。我正在寻找一种方法来延迟转换,直到文档准备好并且尚未找到执行此操作的方法。目前我正在使用以下内容来转换我的 html 文档:
var converter = new HtmlToPdfConverter {PageFooterHtml = "<div>Page: <span class='page'></span><div>", Margins = new PageMargins() {
Bottom = 10,
}, CustomWkHtmlArgs = "--print-media-type"
};
var pdfBytes = converter.GeneratePdfFromFile(url, null);
我的 html 页面上的 javascript 未在 pdf 中呈现,如下所示:
<script>
$(document).ready(function () {
..javascript which changes my html
});
</script>
Wkhtmltopdf javascript 执行的默认延迟是 200 毫秒;它可以通过以下方式轻松增加:
var pdfGen = new HtmlToPdfConverter();
pdfGen.CustomWkHtmlArgs = " --javascript-delay 1000 "; // 1 sec delay for js execution
请注意,您可以使用另一种方法来确保执行 js 代码:wkhtmltopdf 可以等待某些特定的 window.status 值。比如你可以在条码渲染完成后改成window.status:
window.status = "READY";
然后说 wkhtmltopdf 等待这个状态:
pdfGen.CustomWkHtmlArgs = " --window-status READY ";
我正在使用 nReco HtmlToPdfConverter class 尝试将 html 文档转换为 pdf。除了一个例外,这工作正常。我有 javascript,它是 document.ready 上的 运行,并且 javascript 在 html 转换为 pdf 时未呈现,导致我的条形码(由我的 javascript) 制作,未在 PDF 中呈现。我正在寻找一种方法来延迟转换,直到文档准备好并且尚未找到执行此操作的方法。目前我正在使用以下内容来转换我的 html 文档:
var converter = new HtmlToPdfConverter {PageFooterHtml = "<div>Page: <span class='page'></span><div>", Margins = new PageMargins() {
Bottom = 10,
}, CustomWkHtmlArgs = "--print-media-type"
};
var pdfBytes = converter.GeneratePdfFromFile(url, null);
我的 html 页面上的 javascript 未在 pdf 中呈现,如下所示:
<script>
$(document).ready(function () {
..javascript which changes my html
});
</script>
Wkhtmltopdf javascript 执行的默认延迟是 200 毫秒;它可以通过以下方式轻松增加:
var pdfGen = new HtmlToPdfConverter();
pdfGen.CustomWkHtmlArgs = " --javascript-delay 1000 "; // 1 sec delay for js execution
请注意,您可以使用另一种方法来确保执行 js 代码:wkhtmltopdf 可以等待某些特定的 window.status 值。比如你可以在条码渲染完成后改成window.status:
window.status = "READY";
然后说 wkhtmltopdf 等待这个状态:
pdfGen.CustomWkHtmlArgs = " --window-status READY ";