c# - 如何从 HTML 生成 PDF 并使用 CSS @page 编号(通过 C#)?

标签 c# html css pdf

我需要为我正在处理的元素从 HTML 生成一些 PDF。我一直在使用 EvoPDF到目前为止,它运行良好,但现在我需要页码。

怀疑(但正在等待他们的技术支持来验证)不支持 CSS @page 编号。这会在工作中造成一个小麻烦,因为它会使代码变得丑陋,因为我必须手动将 PDF 元素应用到页面,并且它会破坏我在 EvoPDF 周围放置的包装器。

我希望能够使用描述的 CSS @page 计数器方法 here为了获得页码。基本上,我希望以编程方式调用 Chrome 的“打印为 PDF”选项。

如果解决方案具有 C# 绑定(bind),那就太棒了。不太棒,但如果是命令行调用可能没问题(我使用的是 Windows)。

最佳答案

大多数 HTML 到 PDF 的转换引擎不支持@page。其中很多都在 webkit 上运行(例如 wkhtmltopdfHTM2PDFPDFmyURLPDFcrowd 等等),但这些都不支持 @page。

当然使用IE渲染引擎的也不支持@page

我相信Prince XML是目前唯一完全支持@page 的,但它相当昂贵。

如果您可以接受页脚/页眉中的页码编号,那么您仍然可以使用上面提到的 webkit 解决方案,因为它们都支持页眉/页脚页码编号。

关于c# - 如何从 HTML 生成 PDF 并使用 CSS @page 编号(通过 C#)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22425665/

相关文章:

c# - Json.net 反序列化返回一个空对象

html - css clearfix 没有按预期工作

html - 如何在禁用调整大小的情况下将 HTML 表单提交到弹出窗口?

html - Chrome/IE 和 Edge 之间的 CSS flex 显示区别?

c# - ASP.NET - Window.Open(URL) - 文件被缓存,如何停止?

c# - SSIS - 该进程无法访问该文件,因为它正被另一个进程使用

javascript - 隐藏导航栏,同时在新窗口中打开

html - 样式不同的 ul 标签

c# - 在 MVC 5 应用程序中记录异常的位置或时间

html - 表的边框在 IE 中不起作用