python - 如何在 Reportlab 中创建多行文本字段?
问题描述
我正在使用 Reportlab 生成带有交互式文本字段的 PDF。但是,我想为用户提供在此文本字段中编写多行的可能性,但我找不到这样做的方法。假设我有以下代码:
from reportlab.pdfgen import canvas
def add_textfield(c):
c.acroForm.textfield('test', maxlen=1000, x=50, y=500, width=500, height=300)
c = canvas.Canvas("story.pdf")
add_textfield(c)
c.showPage()
c.save()
有没有办法创建一个可以在其中写入多行的文本字段?
解决方案
reportlab.pdfbase.pdfform
hastextFieldAbsolute
和textFieldRelative
具有multiline
参数的函数
from reportlab.pdfgen import canvas
from reportlab.pdfbase import pdfform
canvas = canvas.Canvas("story.pdf")
pdfform.textFieldAbsolute(canvas, 'test', maxlen=1000, x=50, y=500, width=500, height=300, multiline=1)
canvas.showPage()
canvas.save()
推荐阅读
- sql - SQL出现字符替换问题
- python - 使用 sklearn 在 python 中查找 2D 转换以合并/拼接 2 个数据集(元组)重叠
- python - 在 for 循环中将几个值为“None”的变量更改为“n/a”
- csv - 用于登录、检索 cookie 并将 csv 转换为工作表的 Google 脚本
- unix - FreeBSD - tcpdump - 过滤某些 udp 端口
- sql - SQL Group by 多列
- java - 如何遍历 ArrayList 并检查它是否包含来自 Java 中另一个 ArrayList 的值
- performance - Haskell:当不需要日志时,让 Writer 和普通代码一样高效
- angular - nrwl/nx 原理图创建 Angular 应用程序并配置 Angular json
- laravel - Laravel 脱离服务器根目录