使用 Win32/MFC 将 HTML 文件转换为 PDF
Posted
技术标签:
【中文标题】使用 Win32/MFC 将 HTML 文件转换为 PDF【英文标题】:Converting HTML file to PDF using Win32/MFC 【发布时间】:2012-08-24 18:37:24 【问题描述】:作为我申请的一部分,我的客户要求我加入一个自动电子邮件系统。作为该系统的一部分,我生成 html 代码并使用自动化发送它。展望。
但是,他们还需要将 HTML 文档的 PDF 副本作为附件发送。我最初的尝试涉及使用libHaru,但事实证明这很难有效使用,因为我需要从头开始创建 PDF 文档,这需要计算表格中每一行的位置以及所有文本的位置,等等
我想知道是否有一种方法可以通过使用 Win32/MFC 本身或外部库以编程方式将 HTML 代码(或 HTML 文件,如果需要)转换为 PDF 文档。
提前致谢!
编辑:澄清一下,我正在寻找最小化外部依赖的解决方案。
【问题讨论】:
也许你可以使用在线api?然后convertapi.com/web-pdf-api 【参考方案1】:您应该评估这个实用程序 wkhtmltopdf: http://code.google.com/p/wkhtmltopdf/
您可以从命令行调用它而无需运行设置。
我使用它生成我的输出文档为 html,然后调用 ShellExecute(...) 将其转换为 PDF。太棒了!
Inside 使用 webkit + qt。所以与现代 HTML 的兼容性是可以的。
希望对你有帮助。
【讨论】:
不错的解决方案,这是一个轻量级的解决方案,我可以通过它远程下载并安装在我的客户端机器上。我自己的应用程序。谢谢!【参考方案2】:我会看一下PDF Creator,它可以用作 COM 对象(其作用非常类似于打印机)。我没有用它来打印 HTML,所以我不确定,但我猜你可能最终不得不实例化一个 Web 浏览器控件来呈现 HTML,然后将它从那里提供给 PDF 控件.
【讨论】:
据我所知,这不能嵌入到应用程序中,因此它成为外部依赖项,因此我正在寻找最小化外部依赖项的解决方案,我将问题更新为阐明。不过谢谢!【参考方案3】:一些可能的答案在这个帖子中:
C++ Library to Convert HTML to PDF?
不确定它们是否能满足您的特定要求,但这些至少可以帮助您入门。
编辑:
其他一些可能的选项here。
【讨论】:
【参考方案4】:不是 MFC,但您可以尝试 QtWebKit。它可以将 HTML 渲染和导出为 PDF、PNG、JPEG
【讨论】:
以上是关于使用 Win32/MFC 将 HTML 文件转换为 PDF的主要内容,如果未能解决你的问题,请参考以下文章
在无模式对话框中阻止 ESC 和 Enter 键(Win32,非 MFC)