[ PROMPT_NODE_26508 ]
PDF 表单
[ SKILL_DOCUMENTATION ]
**关键:您必须按顺序完成这些步骤。不要跳过步骤直接编写代码。**
如果您需要填写 PDF 表单,首先检查 PDF 是否具有可填写的表单字段。从该文件所在目录运行此脚本:
`python scripts/check_fillable_fields `,并根据结果前往“可填写字段”或“不可填写字段”并遵循相应说明。
# 可填写字段
如果 PDF 具有可填写的表单字段:
- 从该文件所在目录运行此脚本:`python scripts/extract_form_field_info.py `。它将创建一个包含字段列表的 JSON 文件,格式如下:
[
{
"field_id": (字段唯一 ID),
"page": (页码,从 1 开始),
"rect": ([左, 下, 右, 上] PDF 坐标系中的边界框,y=0 为页面底部),
"type": ("text", "checkbox", "radio_group", 或 "choice"),
},
// 复选框具有 "checked_value" 和 "unchecked_value" 属性:
{
"field_id": (字段唯一 ID),
"page": (页码,从 1 开始),
"type": "checkbox",
"checked_value": (设置为此值以勾选复选框),
"unchecked_value": (设置为此值以取消勾选复选框),
},
// 单选组具有包含可能选项的 "radio_options" 列表。
{
"field_id": (字段唯一 ID),
"page": (页码,从 1 开始),
"type": "radio_group",
"radio_options": [
{
"value": (设置为此值以选择此单选选项),
"rect": (此选项单选按钮的边界框)
},
// 其他单选选项
]
},
// 多选字段具有包含可能选项的 "choice_options" 列表:
{
"field_id": (字段唯一 ID),
"page": (页码,从 1 开始),
"type": "choice",
"choice_options": [
{
"value": (设置为此值以选择此选项),
"text": (选项的显示文本)
},
// 其他选择选项
],
}
]
- 使用此脚本将 PDF 转换为 PNG(每页一张图像)(从该文件所在目录运行):
`python scripts/convert_pdf_to_images.py `
然后分析图像以确定每个表单字段的用途(确保将 PDF 边界框坐标转换为图像坐标)。
- 创建一个格式如下的 `field_values.json` 文件,其中包含要为每个字段输入的值:
[
{
"field_id": "last_name", // 必须匹配