将HTML转换为PDF精确副本未显示

时间:2012-09-01 08:53:05

标签: c# asp.net html pdf-generation wkhtmltopdf

我正在做一个R& D,用于将HTML转换为PDF。 我们在Asp.net中创建了一个页面,并在其上放置了一个CKEditor,其中包含选择字体,字体大小,键,斜体等的简单选项。还有两个文本框,用户可以在其中输入要生成的PDF的高度和宽度。除此之外,我们还有div,它根据在Editor中插入的文本显示内容的预览。 Div的高度和宽度都是在运行时设置的,基本上我们想用这个div来展示pdf的样子。 我们使用wkhtmltopdf exe生成PDF。

现在我的问题是,正在创建的PDF不是Div中显示的内容的精确副本,有时它会逐行显示确切的内容,但有时会将某些单词移到PDF中的下一行

为了达到确切的结果,我们已经尝试了很多很多东西,但是没有成功,任何帮助都是非常有用的。

1 个答案:

答案 0 :(得分:0)

您可能尝试的一件事是使用DOMPDF: https://code.google.com/p/dompdf/

它经常更新,并且总是给我很好的结果。

另一个建议是创建特定于PDF的样式以获得所需的结果,然后在创建PDF时应用这些样式。

换句话说,如果您有一个“生成pdf”按钮,它将获取所有HTML内容,然后插入您在PDF生成器中测试的PDF特定样式标记,使得渲染与浏览器相同。你可以通过替换:

来做到这一点
</head> 

使用

<style>STYLES SPECIFIC TO PDF</style>
</head>

创建PDF后。

根据我的经验,PDF渲染通常需要一些额外的规则才能使其看起来像网络渲染引擎。

希望有所帮助。