问题标签 [knp-snappy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9005 浏览

pdf - 如何使用 knp-snappy-bundle 在 PDF 中设置页眉和页脚?

长话短说

由于knp-snappy-bundle我无法在 PDF 中生成页眉,而我实际上可以生成页脚。

它是一个错误,一个功能,还是我做错了什么?

细节

1. 环境

我正在测试knp-snappy-bundle,我还wkhtmltopdfh4cc. 这是我的一部分composer.json

生成的二进制文件是wkhtmltopdf这样说的:

2.没有页眉或页脚,它可以工作

我已经设置了一个使用的控制器knp-snappy-bundle并且它可以工作:

这是我的PdfController

它基本上:

  • 有一个downloadPdf动作
      1. 按名称获取 PDF 文档,作为参数传入。在这个例子中,我们将使用'helloWorld'.
      1. 使用捆绑包中的类返回Response使用 PDF 内容创建的新文件。PdfResponse
  • 获取 PDF
      1. twig它使用引擎渲染视图。
      1. 获取服务(拆分为另一个功能getPdfGenerator())。
      1. 使用该服务getOutputFromHtml(),没有传入任何选项。

这是我的helloWorld.pdf.twig

这是生成的 PDF,完全符合预期:

在此处输入图像描述

3.带有页眉和页脚,失败!

所以我现在添加页眉和页脚。为此,我只需添加几个树枝,将 HTML 渲染成几个变量,然后将它们传递到 Pdf 渲染器的选项中:

除了包含的文本之外,页眉和页脚彼此相同:

这是我的header.pdf.twig

footer.pdf.twig

哇!!!页脚被渲染,但页眉没有!

这就是我得到的:

在此处输入图像描述

图中需要注意:

  1. 标题中有“东西”。我可以看到页面内容的文本,例如“已剪辑”。
  2. 页脚没有完全呈现,因为它隐藏了所有底部边框线,并且文本基线与页面的底部边缘对齐。

Soooo,因此我的问题!

  • 我应该怎么做才能让标题也被渲染?
  • 不应该是我可以通过这个简单的设置看到 PDF 中呈现的标题吗?为什么不出现?
0 投票
1 回答
1832 浏览

ubuntu - wkhtmltopdf 带有快速错误

所以我正在开发一个系统,我将html转换为pdf,我选择wkhtmltopdf有很多原因,所以当我使用xampp在windows上开发时,我有以下代码,它工作得非常完美

其余代码是通过 swiftmailer 发送作为附件制作的 pdf 文件,这非常有效。

但是当我将相同的文件发送到我的服务器时,我的服务器是一台 ubuntu 机器

现在的代码是这样的

但是当我使用它时会导致错误,它看起来像这样

0 投票
0 回答
556 浏览

symfony - 如何在 htmltopdf 中包含 chart.js 图表?

我正在使用 chart.js 在我的 html 页面中呈现图表。我使用 knpSnappyBundle 将 html 渲染为 pdf。但图表未呈现。我知道这是由于 js 延迟。但找不到确切的解决方案。任何建议都会有所帮助。谢谢!

0 投票
1 回答
1426 浏览

symfony4 - Snappy Html 到 Pdf - Symfony 4 - 未加载 Css - Webpack Encore

我尝试使用这个包:

https://github.com/KnpLabs/KnpSnappyBundle

并使用 css 生成我的 html,现在当我尝试像这样加载 css 时,资产包已被 Symfony 4 dans 弃用:

它在控制器/视图上下文中工作,但当 ai 将 html 生成为 pdf 时,css 未加载:/

我想这是因为我的 app.js 有解释加载 app.scss 但我不知道如何解决这个问题。

提前谢谢

0 投票
1 回答
7822 浏览

unicode - WkHTMLtoPDF Unicode 问题

0 投票
1 回答
505 浏览

sonata-admin - SONATA 使用 knpSnappy 生成 pdf

我想将 PDF 导出集成到我的 SONATA ADMIN 应用程序中。为此,我安装了 KnpSnappy Bundle 和 SonataExporterBundle。我遵循了在谷歌上找到的旧教程,但最终它不起作用。

配置.yml:

服务.yml:

在我的 ModelAdmin 中,我添加了它:

我创建了 AppBundle/Export/Exporter.php:

错误:

你能告诉我我做错了什么吗?

0 投票
1 回答
1269 浏览

symfony - KnpSnappyBundle 和 Symfony 3.4:图像和/或 css 导致超时

我已经在现有的 Symfony 3.4 项目上安装了 KnpSnappyBundle。我已经用只有文本、没有图像、没有 css、没有 js 的 HTML 树枝测试了 PDF 生成器:它工作正常。

然后我使用绝对 URL(我在本地主机上工作)添加(到树枝)图像和 Bootstrap.Css 文件:PDF 生成器显示一个丑陋的错误:

捆绑包有什么问题?我正在使用具有 8Gb RAM (ubuntu 16.04) 的 i7 笔记本电脑,我认为这不是机器配置的问题。

更新:我已经从命令行测试了 wkhtmltopdf 并且它确实转换了我的 twig :

所以 wkhtmltopdf 对 localhost 上的绝对 URL 没有任何问题!

谢谢

0 投票
1 回答
2732 浏览

html - wkhtmltopdf thead 在第二页上重叠内容

这是我的 PDF 结果的样子(请参阅第二页上的重叠页眉):

在此处输入图像描述


该代码是一个简单的 HTML 表格,在一个 TD 元素中包含大量内容。


我知道已经存在这个问题(以及其他一些问题):

wkhtmltopdf重复标题重叠内容

那里的解决方案对我有用:

但是,它仅适用于具有多行 (tr) 的表。

就我而言,正如您在上面看到的,我有一个 TD,其中的描述可以包含很多内容,因此一行将跨越多个页面。

是否也有针对这种特殊情况的解决方案?

0 投票
1 回答
107 浏览

symfony - KnpSnappyBundle 参数 process_timeout 在 Symfony 3.3 中不可更改

在 Symfony 3.3 项目中,我使用的是 KnpSnappyBundle。在https://github.com/KnpLabs/KnpSnappyBundle的文档中它说

您还可以使用 process_timeout 配置生成器使用的超时:

不幸的是,这似乎不起作用。环境

没有效果。超时保持在 60。非常感谢有关如何更改此参数的任何想法。

0 投票
1 回答
668 浏览

php - knp-snappy-bundle 有私人服务

从 Symfony 2.2 更新到 Symfony 3.4 后出现错误

编译容器时,“knp_snappy.pdf”服务或别名已被删除或内联。您应该将其公开,或者直接停止使用容器并改用依赖注入。

配置.yml

在控制器动作中:

如何knp_snappy.pdf公开?