【问题标题】:What's the best way to create a pdf document with charts and in a decent quality?创建带有图表且质量不错的 pdf 文档的最佳方法是什么?
【发布时间】:2018-07-19 18:26:50
【问题描述】:

首先,我想为我的英语道歉,我知道我的语法不是最好的,我不是母语人士,所以有时我很难找到合适的词或试图解释我所掌握的东西心里。因此,如果您在理解我想要的内容时遇到问题,请告诉我,我会尽量说得更清楚。

我正在制作一个网络应用程序,后端是用 PHP 制作的。 我需要为带有图表、表格、图片的用户创建某种 pdf 报告,并且我需要它是体面的(质量和风格)

我不知道最好的选择是否是 javascript 库,因为我找到了一些库,但这些库并不是很好看的 pdf。

所以我一直在寻找一个 javascript 库,但似乎没有什么适合我的要求。

我会给你一些图片,以便你更好地了解我想要什么:

  • Sales report:这是我能找到的最接近我想要的东西。
  • Another sales report 这样的事情
  • Invoice我需要一些东西,让我能够为文档做出非常漂亮的设计,类似于这张发票

我真的厌倦了寻找,却一无所获......现在已经快 2 个月了,也许更多。

所以我的第一个想法是使用一个可以将html转换为pdf的javascript库,但是我太天真了,我不知道将html转换为pdf并且不弄乱元素的结构有多难(视觉组织) 我首先尝试了 MrRio 的 jsPDF,但它不支持 css(我真正需要的东西)或图表(如果图表是图片,它工作正常,但如果它们是使用 chartJS 或 highcharts 之类的库生成的,它不会'不工作)。

我尝试了一些类似的插件,但它们都有类似的问题

这是jsPDF 和他们的git 的链接

然后我找到了 jsreport,我在他们的操场上做了一件非常好的事情,而且效果很好。问题是它需要NodeJS,而我的网站是用nodeJS制作的,我不知道是否有办法将jsreport与php一起使用,如果有的话,我不确定它是否会像他们的那样好用操场。 如果有一种仅将nodeJS用于此功能的方法,我只是担心,我不知道不建议这样做还是什么,需要找到更多关于此的信息,idk你们的想法。

Jsreport 可以使用 PhantomJS 等多种配方来生成 PDF

我找到了其他插件,但它们也仅适用于 nodeJS。

这里是jsreport 站点

然后我再次尝试了 jsPDF,但这次与 html2canvas 一起使用它几乎可以正常工作,但质量下降很多,无法选择或复制文本。我设法提高了一点质量,但仅此而已。

我还有其他想法,与浏览器中的打印选项相关,但没有找到任何好的东西。 我不知道是否可行的另一个想法是,它制作某种文档,例如模板,然后以某种方式在该模板中添加用户数据,最终得到一个带有用户数据的 pdf。

Read this,这里有一些相关信息。

所以,我想要这个功能的原因是因为大多数使用我的 Web 应用程序的客户端都需要这个功能。所以我不能将我的应用程序迁移到 Node 或 Rails,因为这需要很长时间,而且我现在没有那个时间,所以我不知道我的选择是什么。该解决方案不需要是免费的,但如果是,那就太好了,因为我没有太多的预算来购买一个非常昂贵的插件。

感谢您阅读我的问题,我真的需要这方面的帮助,所以请告诉我您的所有想法,即使我已经尝试过,每个答案都会受到赞赏,因为也许您可以想出不同的解决方案使用我已经用过的东西。

【问题讨论】:

  • pdfmake.js 是最好的 pdf 生成库。

标签: javascript php pdf-generation jspdf jsreport


【解决方案1】:

用 Highcharts 或任何你想得到的图表准备你的 Html 页面,然后使用这个工具WkHtmltoPDF

【讨论】:

    猜你喜欢
    • 2017-08-06
    • 1970-01-01
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-04
    相关资源
    最近更新 更多