我正在使用PHP输出缓冲区创建动态“数据查看”页面的HTML文件,然后我将此输出作为HTML文件保存到服务器,并希望创建此HTML文件的PDF文件(存储在服务器上)但是我看过的每个解决方案都要求你将HTML代码放入变量中,但我有.HTML文件,我想自动转换为PDF但似乎无法找到解决方案。 / p>
这里的总体想法是通过电子邮件向用户提供数据审核的“副本”,因此我假设PDF是最好的,但如果有任何其他建议,我会很乐意考虑别的。
非常感谢任何帮助。
谢谢!
答案 0 :(得分:20)
我已经非常注重用PHP生成PDF,所以这就是我几年来发现的......
如果你想使用 PDF方法生成一个PDF文件,这个选项真的很好(我会把它硬币化,因为你逐字地生成PDF)。
功能包括:
- 选择度量单位,页面格式和边距
- 页眉和页脚管理
- 自动分页
- 自动换行和文字对齐
- 图片支持(JPEG,PNG和GIF)
- 颜色
- 链接
- TrueType,Type1和编码支持
- 页面压缩
注释
Fast
Free
Difficult
- 使用UTF-8编码的HTML生成PDF
- 它基于FPDF和HTML2FPDF,具有许多增强功能
Mediocre
Free
Easy
- 强大的布局
- 页眉和页脚
- 页码,双面打印
- 表,列表,列,浮点数
- 脚注,交叉引用
- 网络标准
- HTML,XHTML,XML,SVG
- 层叠样式表(CSS)
- 的JavaScript / ECMAScript的
- JPEG,PNG,GIF,TIFF
- PDF输出
- 书签,链接,元数据
- 加密和文档安全
- 字体嵌入和子集化
- PDF附件
- 易于集成
- PHP和Ruby on Rails
- servlet的Java类
- .NET for C#和ASP
- VB6的ActiveX / COM
- 字体&统一
- OpenType字体,TrueType和CFF
- Kerning,Ligatures,Small Caps
- 中文,日文,韩文,阿拉伯文,希伯来文,印地文等
- 友好支持
- 提示电子邮件支持
- 网络论坛,用户指南
- 定期升级
Fast
$$$
- 1份牌照 - $ 3,800
- 2牌照 - $ 3,420
- 3牌照 - $ 3,040
- 4牌照 - $ 2,850
- 5+许可证 - $ 2,800
Easy
如果您想要高质量的API,这个选项非常好。这是用于创建PDF和XLS文件的云托管选项。在后端使用PrinceXML。
功能包括:
- 您只需发送HTML,JS和CSS
- 保证正常运行时间
- 文档尺寸无限
- 专家支持,包括文档调试
Fast
$
- $$$
- 基本 - 125 docs / mo - $ 15 / mo
- 专业 - 325 docs / mo - $ 29 / mo
- Premium - 1,250 docs / mo - $ 75 / mo
- 最多 - 5,000个文件/月 - 149美元/月
- 青铜 - 15,000 docs / mo - $ 399 / mo
- 银 - 40,000 docs / mo - $ 1,000 / mo
- Gold - 100,000 docs / mo - $ 2,250 / mo
- 企业 - ∞docs/ mo - 不公开(与他们联系)
Very easy
- [使用] Qt WebKit渲染引擎
- 创建要转换为PDF(或图像)的HTML文档。通过该工具运行HTML文档。
Fast
Free
Easy
$_SESSION
变量,因为这是通过命令行运行并使用单独的浏览器。您需要通过$_GET
变量传递所有变量。system()
使用的Java库:Source 1,Source 2 我们与许多供应商打交道。一些供应商向我们发送PDF文件用于发票或其他文件,而其他供应商向我们发送HTML电子邮件(包含我们的所有发票信息),还有一些供应商甚至向我们发送发票的链接。
最简单的选择是以HTML格式创建文档,并向用户发送指向该文档的链接(显然是安全的)。这将允许用户随时(以及从具有浏览器的任何设备)查看发票,并且还允许用户在需要时从浏览器进行打印。此方法还会为您的网站带来流量,这通常也有利于业务。
我们过去所做的是创建一个链接到网站上的文件(安全),以便他们可以在浏览器中查看它,然后有一个按钮来下载发票(只需下载一个使用上面列出的PDF转换工具生成的该网页的PDF版本 - 目前为wkhtmltopdf)。
在我看来,最好的方法是将所有交付方法合二为一。在电子邮件的HTML内容中发送包含文件信息的电子邮件,并附上该文件的PDF。在电子邮件内容的标题部分(位于电子邮件顶部)内,发送一个链接,让收件人可以直接访问包含所有信息的网页(位于其安全门户中的帐户中)。这样他们就可以在浏览器中查看它,以防万一他们无法在电子邮件中正确查看它,以防他们没有PDF查看器(我知道它现在很少见,但你和令人惊讶的是,有多少人有过时的系统 - 我们仍然需要向一些客户发送传真,因为他们仍然没有收到电子邮件;是的,现在仍然在2017年,叹息......)。在您的网站上,还为他们提供PDF文档的下载链接(这将再次访问他们当前所在的页面并将其转换为PDF并通过浏览器自动下载)。
我希望这有帮助!
答案 1 :(得分:0)
我想在可能的解决方案列表中添加另一个选项。 Aspose.PDF Cloud API还提供了将HTML转换为PDF的功能。它为所有流行的编程语言提供SDKs。
用于HTML到PDF转换的PHP示例代码:
//Html file with resource files
$name = "HtmlWithImage.zip";
$html_file_name = "HtmlWithImage.html";
$height = 650;
$width = 250;
$src_path = $name;
$response = pdfApi->getHtmlInStorageToPdf($src_path, $html_file_name, $height, $width);
print_r($response);
echo "Completed!!!!";
我与Aspose合作,作为开发人员。