wkhtmltopdf从PDF中排除css文件,但在HTML中显示
问题描述:
我正在使用wkhmtltopdf,发现我遇到了问题。 我正在使用html页面在转换为PDF之前在浏览器中预览内容。wkhtmltopdf从PDF中排除css文件,但在HTML中显示
但让它在我的预览更具可读性,我已经加入了网页上的一些CSS:(在JavaScript/jQuery的有关文件准备好)
$(document).ready(function() {
if(window.location.href.indexOf("preview") > -1 && window.location.href.indexOf(".pdf") == -1) {
appendCSStoHtml();
}
});
function appendCSStoHtml() {
$("body").css({"background-color":" #F0F8FF"});
$("#previewHtml").css({
"margin-left":"15%",
"margin-right":"15%",
"margin-top":"15px",
"max-width":"1024px"});
$("#previewHtml > h2").css({"margin-left":" 15px"});
}
所以这是一切美好和花花公子,但是当我根据这个HTML页面生成我的PDF,然后CSS也在我的PDF中呈现,并且在PDF内部也显示了大纲和背景。
我不希望发生这种情况,我只希望我的CSS样式元素在HTML页面上渲染而不在PDF内。
我该如何做到这一点?
我试着用下面的:
$(document).ready(function() {
if(window.location.href.indexOf("preview") > -1 && window.location.href.indexOf(".pdf") == -1) {
appendCSStoHtml();
}
});
但是,这并不重要。
任何想法?
答
它又是我。
不知道是否有类似于我正在寻找的东西。 因此我做了我自己的。
我加了一个页面参数,并检查该代码,看它是否是true
或false
:
<script type="text/javascript">
$(document).ready(function() {
var url_string = window.location.href;
var url = new URL(url_string);
var renderCss = url.searchParams.get("renderCss");
if(renderCss == 'true') {
appendCSStoHtml();
}
});
function appendCSStoHtml() {
$("body").css({"background-color":" #F0F8FF"});
$("#previewHtml").css({
"margin-left":"15%",
"margin-right":"15%",
"margin-top":"15px",
"max-width":"1024px"});
$("#previewHtml > h2").css({"margin-left":" 15px"});
}
</script>