【问题标题】:Keeping CSS in Html to PDF export using Javascript使用 Javascript 将 HTML 中的 CSS 保存为 PDF 导出
【发布时间】:2017-02-08 14:16:38
【问题描述】:

我正在尝试使用 JavaScript 生成 PDF,但无法使用 CSS 生成。我目前正在使用jsPDF。 jsPDF 的问题在于它带走了所有的格式。我不需要样式或颜色,但我需要并排有多个divs

我的代码是

                    margins = {
                        top: 0,
                        bottom: 0,
                        left: 20,
                        width: 170
                    };                       
                    pdf.setFontSize(6);
                    pdf.fromHTML(
                        $('#textpdfdiv').html(), 
                        margins.left, 
                        margins.top, { 
                            'width': margins.width
                        },

                        function (dispose) {                                
                            pdf.save('Export_Text.pdf');
                        }, margins
                    );

textpdfdivdiv 的 id,它在单独的 divs 中并排具有 form 的所有值。但是当我生成 PDF 时,它们会进入单独的行。

我不能使用XEPOnline,因为它是在线处理的。

我需要的 PDF 输出是这样的(减去颜色和表单字段等)



我目前的输出是

有没有把 HTML+CSS 转换成 PDF 的插件?或者我可以用jsPDF实现这个吗?我没有桌子,所以这个Question 也无济于事。

编辑:我也不能使用 Html2Canvas,因为它会创建很长的不可搜索的 PDF,我需要可搜索的 PDF。 Html2Canvas 截图,它是一个图像,但我需要可以复制的文本。

谢谢你,
哈姆扎

【问题讨论】:

  • 我认为这需要自动发生?我只问,因为我知道的唯一方法是使用@print 媒体查询格式化您的 CSS 并实际打印页面(输出为 PDF)。我敢肯定这没有帮助,但也许这可以让你走上正轨?
  • no 实际上打印没有帮助...因为它不支持所有浏览器其次我只需要很少的东西.. 这会创建超过 50 MB 的 PDF
  • 您找到任何解决方案了吗?

标签: javascript html css jspdf html-to-pdf


【解决方案1】:

我使用这个插件来生成带有 HTML 和 CSS 的 PDF。您只需将要放入 PDF 的内容包含在带有 id 的 "" 中。

https://github.com/Xportability/css-to-pdf

【讨论】:

  • 这个可以免费使用吗?
【解决方案2】:

也许我无法提供这样的帮助,但这似乎是该库的一个错误:https://github.com/MrRio/jsPDF/issues/91

在该页面中,您会找到一个针对您的目的的建议:使用 Html2Canvas。

【讨论】:

  • 谢谢,但这无济于事。我也使用过它,而且 Html2Canvas 创建了长时间不可搜索的 PDF,我需要可搜索的 PDF。 Html2Canvas 基本上是截图,它是图像而不是文本..
猜你喜欢
  • 2016-09-19
  • 2015-09-25
  • 2015-04-14
  • 1970-01-01
  • 2014-09-10
  • 1970-01-01
  • 1970-01-01
  • 2018-06-12
  • 2017-05-28
相关资源
最近更新 更多