PDF Form Filler について
PDF Form Fillerは、PDFフォームへの入力と入力済みデータの抽出を支援するスキルです。一括処理、検証、項目マッピングに対応しますが、実際のフォーム入力は行いません。
主な機能
- 01テキスト、チェックボックス、選択項目への入力
- 02入力済みフォームデータの抽出
- 03複数フォームの一括入力
- 04フォームデータの検証
- 05項目マッピングテンプレートの作成
活用シーン
- 01提供データをPDFフォームに反映
- 02入力済みフォームから項目値を抽出
- 03CSVやスプレッドシートからフォームを一括生成
- 04入力前にデータ形式を確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ claude-office-skills/ skills --skill pdf-form-fillerインストール後、Claude Code で/pdf-form-fillerを入力して読み込まれたか確認します。
詳細
PDF フォーム入力
PDF フォームに自動で入力し、入力済みフォームからデータを抽出します。
概要
このスキルでは、次のことができます。
- 提供されたデータを使って PDF フォームに入力する
- 入力済みフォームからデータを抽出する
- 複数のフォームに一括入力する
- フォームデータを検証する
- フォーム入力用テンプレートを作成する
使用方法
フォームに入力する
"Fill this PDF form with the following data:
- Name: John Smith
- Date: 2026-01-29
- Amount: $1,500"
フォームデータを抽出する
"Extract all form field values from this PDF"
"What data is filled in this form?"
一括入力
"Fill 50 copies of this form using data from the spreadsheet"
"Generate forms for each row in this CSV"
フォームフィールドの種類
サポートされているフィールド
| フィールドの種類 | 説明 | 入力方法 |
|---|---|---|
| テキストフィールド | 1 行または複数行のテキスト | テキストを直接入力 |
| チェックボックス | はい/いいえの選択 | チェックする/外す |
| ラジオボタン | 複数の選択肢から 1 つを選択 | 選択肢を選ぶ |
| ドロップダウン | リストから選択 | 値を選ぶ |
| 日付フィールド | 日付ピッカー | 日付の値 |
| 署名 | デジタル署名 | 署名画像/証明書 |
| コンボボックス | テキスト入力が可能なドロップダウン | 選択または入力 |
フィールドの識別
## Form Fields: [Form Name]
### Field Map
| Field Name | Type | Required | Page | Notes |
|------------|------|----------|------|-------|
| applicant_name | Text | Yes | 1 | Max 50 chars |
| birth_date | Date | Yes | 1 | MM/DD/YYYY |
| gender | Radio | Yes | 1 | M/F/Other |
| employed | Checkbox | No | 1 | Check if yes |
| state | Dropdown | Yes | 2 | US states |
| signature | Signature | Yes | 3 | Digital sig |
入力テンプレート
データマッピングテンプレート
## Form Fill Template: [Form Name]
### Form Info
- **File**: application_form.pdf
- **Total Fields**: 25
- **Required Fields**: 15
### Field Mappings
```yaml
# Personal Information
applicant_name: "${firstName} ${lastName}"
date_of_birth: "${birthDate}"
ssn_last_four: "${ssnLast4}"
phone: "${phone}"
email: "${email}"
# Address
street_address: "${address.street}"
city: "${address.city}"
state: "${address.state}"
zip_code: "${address.zip}"
# Employment
currently_employed: ${isEmployed} # checkbox
employer_name: "${employer.name}"
job_title: "${employer.title}"
# Selections
payment_method: "${paymentMethod}" # dropdown
agree_terms: true # checkbox
サンプルデータ
{
"firstName": "John",
"lastName": "Smith",
"birthDate": "1990-05-15",
"phone": "555-123-4567",
"email": "[email protected]",
"address": {
"street": "123 Main St",
"city": "New York",
"state": "NY",
"zip": "10001"
},
"isEmployed": true,
"employer": {
"name": "Acme Corp",
"title": "Manager"
},
"paymentMethod": "Direct Deposit"
}
## Output Formats
### Fill Result Report
```markdown
## Form Fill Result
### Summary
| Status | Value |
|--------|-------|
| **Form** | application_form.pdf |
| **Fields Filled** | 23/25 |
| **Errors** | 2 |
| **Output** | filled_application.pdf |
### Filled Fields
| Field | Value | Status |
|-------|-------|--------|
| applicant_name | John Smith | ✅ |
| date_of_birth | 05/15/1990 | ✅ |
| phone | 555-123-4567 | ✅ |
| state | NY | ✅ |
| payment_method | Direct Deposit | ✅ |
### Errors/Warnings
| Field | Issue | Suggestion |
|-------|-------|------------|
| ssn | Field not found | Check field name |
| signature | Requires certificate | Add signature manually |
### Validation
- ✅ All required fields filled
- ✅ Date formats correct
- ⚠️ Signature field needs manual completion
抽出データレポート
## Form Data Extraction
### Source: completed_form.pdf
### Extracted Values
```json
{
"form_title": "Employment Application",
"submission_date": "2026-01-29",
"fields": {
"applicant_name": "Jane Doe",
"date_of_birth": "1985-03-20",
"email": "[email protected]",
"phone": "555-987-6543",
"address": "456 Oak Ave, Chicago, IL 60601",
"position_applied": "Senior Developer",
"salary_expectation": "$120,000",
"available_start": "2026-03-01",
"references_provided": true
}
}
フィールド統計
| 指標 | 値 |
|---|---|
| フィールド総数 | 30 |
| 入力済みフィールド | 28 |
| 空のフィールド | 2 |
| 抽出の信頼度 | 98% |
## Batch Processing
### Batch Fill Job
```markdown
## Batch Form Fill
### Configuration
- **Template Form**: w9_form.pdf
- **Data Source**: vendors.csv
- **Records**: 150
- **Output Folder**: /filled_w9s/
### Data Preview
| Row | Name | TIN | Address |
|-----|------|-----|---------|
| 1 | Acme Corp | XX-XXX1234 | 123 Main St |
| 2 | Beta LLC | XX-XXX5678 | 456 Oak Ave |
| ... | ... | ... | ... |
### Progress
| Status | Count | % |
|--------|-------|---|
| ✅ Completed | 145 | 97% |
| ⚠️ Warnings | 3 | 2% |
| ❌ Errors | 2 | 1% |
### Errors
| Row | Issue |
|-----|-------|
| 47 | Invalid TIN format |
| 89 | Missing required: Address |
### Output Files
- w9_acme_corp.pdf
- w9_beta_llc.pdf
- ...
フォームの検証
検証ルール
## Form Validation Rules
### Field Validations
| Field | Rule | Error Message |
|-------|------|---------------|
| email | Valid email format | "Invalid email address" |
| phone | 10 digits | "Phone must be 10 digits" |
| ssn | XXX-XX-XXXX format | "Invalid SSN format" |
| date | MM/DD/YYYY | "Use MM/DD/YYYY format" |
| zip | 5 or 9 digits | "Invalid ZIP code" |
| amount | Numeric, > 0 | "Enter positive number" |
### Cross-Field Validations
| Rule | Fields | Condition |
|------|--------|-----------|
| Conditional required | employer_name | Required if employed = true |
| Date range | end_date | Must be after start_date |
| Sum check | item_totals | Must equal grand_total |
検証レポート
## Pre-Fill Validation
### Data Validation Results
| Field | Value | Valid | Issue |
|-------|-------|-------|-------|
| email | john@email | ❌ | Missing domain |
| phone | 555-1234 | ❌ | Only 7 digits |
| date | 2026-01-29 | ✅ | - |
| zip | 10001 | ✅ | - |
### Summary
- ✅ Valid: 18 fields
- ❌ Invalid: 2 fields
- ⚠️ Warnings: 3 fields
### Recommendations
1. Fix email format: add domain (e.g., @company.com)
2. Complete phone number with area code
一般的なフォームの種類
政府機関のフォーム
| フォーム | 目的 | 主なフィールド |
|---|---|---|
| W-9 | 納税者識別 | TIN、氏名、住所 |
| I-9 | 雇用資格の確認 | 身分証明書情報、市民権 |
| W-4 | 源泉徴収 | 控除額、申告状況 |
| 1099 | 請負業者の収入 | 収入、支払者情報 |
ビジネスフォーム
| フォーム | 目的 | 主なフィールド |
|---|---|---|
| NDA | 機密保持 | 当事者、条件、日付 |
| 請求書 | 請求 | 項目、金額、条件 |
| PO | 発注書 | 項目、数量、ベンダー |
| 申請書 | さまざま | 個人情報、経歴 |
ツールのおすすめ
デスクトップソフトウェア
- Adobe Acrobat Pro:フォーム機能が充実
- Foxit PDF Editor:フォームへの対応が良好
- PDFescape:無料のオンラインサービス
- JotForm:フォームの作成と入力
プログラミングライブラリ
- pdf-lib (JavaScript):フォームの入力と作成
- PyPDF2 (Python):基本的なフォーム入力
- iText (Java/.NET):エンタープライズ向けフォーム
- PDFBox (Java):Apache のプロジェクト
自動化ツール
- Adobe Acrobat Actions:一括処理
- Power Automate:Microsoft との連携
- Zapier + PDF.co:クラウド自動化
制限事項
- 実際のフォーム入力は実行できません(手順を案内します)
- デジタル署名には適切な証明書が必要です
- セキュリティ保護された PDF の中には、フォーム入力を禁止しているものがあります
- 複雑な計算は自動更新されない場合があります
- フラット化されたフォームは編集できません
- フィールド名は完全に一致している必要があります
コメント
Markdown 対応