c# - 使用 CSS 从 HTML 在 iTextSharp 中呈现 PDF

标签 c# html pdf itextsharp

知道如何使用 iTextSharp 呈现 PDF,以便它使用 CSS 呈现页面。 css 可以嵌入到 HTML 中,也可以单独传入,我并不关心,只是希望它能工作。

非常感谢具体的代码示例。

此外,我真的很想坚持使用 iTextSharp,但如果您对其他东西有任何建议,它必须是免费的、开源的,并且拥有允许在商业软件中使用它的许可证。

最佳答案

现在不可能,但没有什么可以阻止您启动可以做到这一点的开源项目。我可能真的会开始一个,因为我也需要它!

基本上,您需要将 html 和 css 标记转换为 iTextSharp 类的解析器。所以<table>成为iTextSharp.SimpleTable等等。

很容易想出能够使用有限的 html 和 css 子集的原型(prototype)。

更新: 在这成为可能之前,这就是我自己临时解决它的方式。只需两步:

  • 告诉您的用户下载名为 PDFCreator 的开源应用
  • 通过提供打印样式表使您所有的 html 报告打印友好。

    如果您的一些多页报告需要在每一页上都有标题,请在 THEAD html 标记中设置它们。

现在用户将能够打印友好,如果他们选择 PDFCreator 打印机驱动程序,他们甚至可以获得 PDF 格式的报告(还有其他 pdf 打印机驱动程序,但这个是免费和开源的)。

我也知道 HTML 不如 PDF 灵活,但它可能足够好。我正在对真实用户进行一些测试,他们实际上很喜欢它,因为他们现在不仅可以将任何内容打印为 PDF(甚至超出我的应用程序),而且他们的工作流程更快,因为他们不必下载并等待他们的 pdf 阅读器打开向上。他们只是直接从他们的网络浏览器打印(或导出为 pdf)他们在网站上看到的内容……有点道理。

关于c# - 使用 CSS 从 HTML 在 iTextSharp 中呈现 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/430280/

相关文章:

c# - 检查一个控件是否是 "touching"另一个控件

c# - VB.NET 必须实现错误

java - 使用 Java 构建 HTML5 离线 Web 应用程序

javascript - 如何通过 javascript 为我的表创建自动标记

python - 如何使用 PDFMiner 在 Python 中提取 PDF 中文本的字体颜色?

c# - 参数化查询与 SQL 注入(inject)

c# - 使用 C# 填充 bootstrap 下拉列表

javascript - 如何设置新浏览器标签页的标题?

html - 如何在 PDF.js 中强制/设置语言环境

language-agnostic - 有什么解决方案可以在没有详细内容比较的情况下知道两个 pdf 的相似性