问题标签 [weasyprint]

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 投票
1 回答
243 浏览

python - 如何使用 Django 生成响应式 PDF?

如何使用 Django 生成响应式 PDF?

我想用 Django 生成一个 PDF,但我需要它是响应式的,也就是说,PDF 的文本已经适应了不允许空间为空的情况。

例如对于文本中的这种更改的协议,然后,我需要适应纸页的空间。

0 投票
3 回答
14125 浏览

python - 使用具有通用页眉/页脚和分页的 WeasyPrint 生成 PDF

我正在使用 Wea​​syPrint 在 Django 中生成 PDF。我可以从静态 html 文件生成 pdf,如下所示 -

但我想生成一个 PDF,我可以在每个页面中包含一个通用的页眉/页脚并添加分页。

如果有人能告诉如何包含自定义字体来生成 PDF,这将非常有帮助。我已经在操作系统(Ubuntu 14.04)中安装了字体,但它不工作。

我在网上搜索了很多关于这些的信息。但找不到合适的解决方案。

0 投票
0 回答
1024 浏览

python - Python 使用 Sendgrid 发送 Weasyprint PDF 电子邮件附件

我正在尝试通过电子邮件发送由 Weasyprint 与 Sendgrid 生成的 PDF。Sendgrid Python 库抛出了一个错误HTTP Error 400: Bad Request,虽然描述性不是很好,但我认为这是由于附件编码存在问题(Sendgrid 需要 base64 中的附件)。

我在这里发现了类似的问题,但发布的解决方案并没有解决我的问题。谢谢。

0 投票
1 回答
1548 浏览

html - 如何将图像引入使用 weasyprint 生成的 PDF?

我可以使用 Django 和 weasyprint 生成 PDF,但是,当我需要加载到图像时,我遇到了 html 问题,然后出现错误。我的实现是这样的:

这是我的实现

和我的 html,我用一个简单的方法调用图像

"img src="{{ constancia.imagencita.url }} "

我得到“/media/firmas_directores_rrhh/180px-Walt_Disney_1942_signature.svg.png”(Pixbuf 错误:无法识别的图像文件格式)“

0 投票
1 回答
326 浏览

python - weasyprint 呈现文本不完整的 PDF 文件

我正在使用 python 中的 weasyprint 库为各种房地产广告渲染 PDF 传单。但是,渲染文件中的某些文本缺少整个句子的部分内容。

文本为捷克语。例如,输入文本:“Zrekonstruovaný a jižně orientovaný byt ve 3. nadzemním podlaží bytového domu s výtahem。”

以 PDF 格式呈现的文本:“Zrekonstruovaný, jižněvýtahem.”。因此,它缺少句子的中间部分。

删除特殊字符 (ěščřžýáíé) 后,这个特定的句子可以渲染,但这不是通用规则,因为即使使用这些字符,其他文本也可以渲染。

我找不到发生这种情况的任何规则。此外,这仅发生在我们在 Debian 上运行的生产服务器上。在我本地的 Kubuntu 上渲染运行得很好。

在仅安装 weasyprint 及其依赖项的虚拟环境中运行 weasyprint v 0.31 和 0.33 进行测试。

我会很高兴任何提示,谢谢。

0 投票
1 回答
2534 浏览

python - Weasyprint pdf 生成时间太长,无法下载。如何流式传输其创作?

我一直在成功使用 Wea​​syprint 生成 pdf,直到达到一定大小,这是我的应用程序的一个常见用例,其中 pdf 生成需要很长时间(超过 10 秒),以至于它破坏了与浏览器的连接,并且下载是不可能的。

我想我必须流式传输文件创建并返回 django StreamingHttpResponse(同意?)。我不会对 pdf 进行预处理,因为它是由包含用户经常添加或删除的项目的篮子组成的。

但是如何使用weasyprint流式传输文件创建?即使我将我的 sourceHtml 字符串分成几部分,如何逐步编写 pdf?

我渲染一个 django 模板并从中生成 pdf:

还是有其他方法可以解决这个问题?

谢谢 !

0 投票
4 回答
1714 浏览

django - Elastic Beanstalk 上的 Django Weasyprint - 无法加载 GDK-Pixbuf

我已经在 Elastic Beanstalk 上安装了 weasyprint。到目前为止,html 模板的打印工作正常,但我无法打印 svg 图像。

Weasyprint 抛出以下错误:

我需要 gdk-pixbuf 来打印 SVG 吗?如果是这样,我该如何在 Amazon Linux 上安装它?

0 投票
1 回答
135 浏览

html - 使用自定义布局在单个 .pdf 文件中组装多个图形?

我需要自动化在 LaTeX 中生成报告的过程,并组装存储在.svg.png格式中的多个图形。我最初的想法是使用CSS Grid Layout编写 HTML 模板,使用 Python 包格式化路径和标题jinja2,生成.pdf使用weasyprint并使用 LaTeX 编译最终报告。

但是,由于 CSS 网格布局,我很难转换.html.pdf:在 Chrome 中无法转换 pdf,在 Firefox 中,生成的 pdf 看起来与网页确实不同。

您可以根据以下标准提出什么解决方案?

  • 设置布局的灵活性:我有大约 100 个不同大小的图形要组装,并希望它们正确对齐。图的某些部分是重复的块。因此,某种网格和子网格抽象将完美地工作。

  • 快速解决方案:我确信可以使用纯 CSS/LaTeX 来定义我想要的布局,但我不是 CSS/LaTeX 专家,不能花很多时间学习它。但是,也许有一些框架可以简化工作并且易于学习?

  • 自动解决方案:我想尽可能自动化从生成单个数字到生成最终报告的过程。

  • 可能的后处理:可以自动化很多,但是我希望有可能在矢量图形编辑器中更正图形的某些部分。

也许可以解决将HTML转换为PDF的问题?我尝试使用一些可用于 Firefox 的插件,但它们不起作用。

布局示例:

布局示例

如果我的问题不符合 stackoverflow 的格式,请告诉我应该将其移至哪个社区。

0 投票
1 回答
490 浏览

python - Weasyprint类不应用样式

我正在从以下html生成pdf ...

和我的css文件...

welcome-header类样式按照我的预期应用 - 但类welcome-logo没有。徽标(对于页面来说太大)不会改变大小。令人沮丧的是,如果我像这样使用内联样式......

样式应用正确。我在文档中找不到关于不能处理<img>标签的类的任何内容,我错过了什么?

编辑:如果相关,使用 Wea​​syprint 0.21。

0 投票
2 回答
5985 浏览

python-3.x - OSError:无法加载库 libcairo.so.2:错误 0x7e。此外, ctypes.util.find_library() 无法找到库

我已经安装了以下

C:\MinGW

C:\msys

C:\GTK

但是python搜索站点包中的文件并将错误抛出为:

OSError:无法加载库 libcairo.so.2:错误 0x7e。此外, ctypes.util.find_library() 无法找到库

此问题发生在安装 weasyprint 软件包时。