首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTML转PDF与通过PHP以编程方式创建PDF

HTML转PDF与通过PHP以编程方式创建PDF
EN

Stack Overflow用户
提问于 2009-11-28 21:01:00
回答 6查看 12.5K关注 0票数 9

我有一个PHP应用程序,需要生成一些PDF发票和PDF时间表与漂亮的页眉/页脚。一些Stackoverflow用户建议使用TCPDF来创建PDF文档。在我的研究中,我发现了两种生成PDF的方法:

1)以编程方式格式化PDF,如下所示:

代码语言:javascript
复制
    $tcpdf->SetFillColor(255, 0, 0);
    $tcpdf->SetTextColor(255);
    $tcpdf->SetDrawColor(128, 0, 0);
    $tcpdf->SetLineWidth(0.3);
    $tcpdf->SetFont('', 'B');

2)将HTML转换为PDF

我如何决定我应该使用哪种方法?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-11-28 21:22:27

我可以推荐Zend_Pdf,根据您的分类,它是一种编程方法。

HTML抽象很好,但我不相信你拥有完整的基于几何图形的绘图API的全部功能和控制。要提防像fpdf这样的库,这些库不支持UTF-8,并使用穷人的解析器将HTML‘转换’为PDF。

关于你的申请,我已经制作了一个生成模板化发票的系统。我的用户可以上传由Zend_Pdf提取的PDF模板。然后,此模板用于生成的发票的每一页,允许轻松定制。

请注意,我的读者主要是有能力制作这些模板的图形设计师,所以这里是合适的解决方案。如果你的读者只熟悉HTML,‘转换’HTML到PDF可能是最好的方法。

票数 2
EN

Stack Overflow用户

发布于 2009-11-28 21:15:56

我总是建议动态创建PDF,但基于模板,这些模板可以使用最终用户工具进行编辑,或者至少不需要成为程序员。在您的例子中,可能就是HTML。对我来说,理想的解决方案是采用Office模板,以编程方式用值填充它,并在技术上可行的情况下将其输出为PDF。我使用tbsOOO在PHP中完成了办公模板填充部分,它工作得很好。

使用基于模板的方法而不是从头开始生成文档的主要原因是:用户可以按自己认为合适的方式设计模板,而当设计需要更改时就不需要您了。(总有一天它需要改变。)只有当插入的数据需要以某种方式进行更改或扩展时,程序员才会发挥作用。这对你来说是一个巨大的工作量。

票数 3
EN

Stack Overflow用户

发布于 2009-11-28 21:44:43

您好,您有两个选择。您可以使用,它使您能够将文档设计为常规的html文档,并使用css设置样式。您可以将此文档转换为pdf。我的经历很好。我使用Zend_View呈现了一个常规的html页面,并将其转换为pdf格式。这样你就有了一个非常灵活的模板,因为你可以在你的html生成的视图中做出各种显示决定。

请参阅list of css-compatability→。

或者,您可以使用。这也允许基于模板的方法,但更严格,html更少。一个integration for Zend Framework正在赶来。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1812484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档