ข้ามไปยังเนื้อหา

กรอกฟอร์ม PDF ด้วย NextPDF Connect (Pro)

ใช้ NextPDF Connect เพื่อกรอกฟิลด์ของฟอร์ม PDF แบบโต้ตอบด้วย XML Forms Data Format (XFDF) เครื่องมือด้านการลงนามและฟอร์มคือ fill_form ผู้ให้บริการเครื่องมือระดับ Pro จะลงทะเบียน new FillFormTool() โดยมีชื่อโปรโตคอลเป็น fill_form fill_form เป็นเครื่องมือระดับ Pro ระหว่างบูต เซิร์ฟเวอร์จะตรวจสอบแพ็กเกจ Pro ด้วย class_exists() และจะลงทะเบียนเครื่องมือนี้เฉพาะเมื่อพบแพ็กเกจเท่านั้น เมื่อใช้ Core เพียงอย่างเดียว fill_form จะไม่ปรากฏในรีจิสทรี

Terminal window
composer require nextpdf/server
composer require nextpdf/pro

ผูก transport แล้วตรวจสอบว่ามีเครื่องมือนี้อยู่ผ่าน diagnostic.capabilities (ดู environment-diagnostics) อย่าสันนิษฐานว่ารายการเครื่องมือจะคงที่เสมอ

XFDF จับคู่ชื่อฟิลด์กับค่าผ่านอิลิเมนต์ <field> ชื่อแต่ละรายการต้องตรงกับฟิลด์ AcroForm ที่มีอยู่แล้วในเอกสารปลายทาง ดิกชันนารีฟิลด์ของฟอร์มแบบโต้ตอบจะจัดเก็บฟิลด์แต่ละรายการ (ISO 32000-2 §12.7) และค่าที่ให้มาจะกลายเป็นค่าของฟิลด์นั้น (ISO 32000-2 §12.7) หากชื่อไม่ตรงกับฟิลด์ใดเลย เครื่องมือจะข้ามชื่อนั้นแทนการถือเป็นข้อผิดพลาด เครื่องมือจะรายงานจำนวนฟิลด์ที่กรอกและจำนวนฟิลด์ที่ข้าม

เครื่องมือระดับบทบาทระดับความเสี่ยง
create_pdfCoreเปิดเซสชันปลอดภัย
fill_formProนำค่า XFDF ไปใช้กับฟิลด์ AcroFormควรระมัดระวัง
output_pdfCoreเรนเดอร์และส่งคืน PDFต้องอนุมัติ / ตรวจสอบ (base64)

ชื่อเครื่องมือเป็นชื่อโปรโตคอลในรีจิสทรี แค็ตตาล็อกเครื่องมือ คือแค็ตตาล็อกอ้างอิงอย่างเป็นทางการ รุ่นที่ติดตั้งจะเป็นตัวกำหนดว่ามีเครื่องมือใดให้ใช้งานได้บ้าง เครื่องมือระดับ Pro จะปรากฏเฉพาะเมื่อมีการติดตั้งแพ็กเกจ Pro เท่านั้น

  1. create_pdf (หรือโหลดเทมเพลตที่มีฟิลด์ฟอร์มอยู่แล้ว)
  2. fill_form ด้วย xfdf_data ที่จับคู่ชื่อฟิลด์กับค่า
  3. output_pdf → base64

ผลลัพธ์จะรายงาน fields_filled, fields_skipped และชื่อฟิลด์ที่ตรงกัน

ใช้เทมเพลตที่มีชื่อฟิลด์ AcroForm ที่ควบคุมได้ ตรวจสอบความถูกต้องของ XFDF ตามสกีมา XFDF ก่อนส่ง ตรวจสอบ fields_skipped และรายการชื่อที่ส่งกลับมาเพื่อตรวจจับชื่อที่ไม่ตรงกัน (ชื่อแยกแยะตัวพิมพ์เล็กพิมพ์ใหญ่) สำหรับการกรอกข้อมูลขนาดใหญ่ ให้ควบคุมไม่ให้เกินขีดจำกัดขนาดของ XFDF และแบ่งข้อมูลออกหากจำเป็น

  • XFDF ผิดรูปแบบ ข้อผิดพลาดในการแยกวิเคราะห์จะระบุตำแหน่งที่เป็นปัญหา escape เอนทิตี XML และระบุ xmlns ด้วย
  • ชื่อไม่ตรงกัน ฟิลด์ที่ไม่ตรงกันจะถูกข้ามโดยไม่แจ้งเตือน และ fields_skipped จะเพิ่มขึ้น ชื่อแยกแยะตัวพิมพ์เล็กพิมพ์ใหญ่
  • ไม่มีฟิลด์ฟอร์ม เอกสารที่ไม่มี AcroForm จะได้จำนวนฟิลด์ที่กรอกแล้วเป็นศูนย์
  • XFDF ใหญ่เกินไป เซิร์ฟเวอร์จะปฏิเสธข้อมูลที่เกินขีดจำกัดขนาด แบ่งข้อมูลออกหรือตัดช่องว่างออก
  • ไม่มี Pro เมื่อใช้ Core เพียงอย่างเดียว fill_form จะไม่ถูกลงทะเบียน และการเรียกใช้จะส่งคืนข้อผิดพลาดว่าไม่รู้จักเครื่องมือ ตรวจสอบด้วย diagnostic.capabilities ก่อน

การกรอกข้อมูลรวดเร็วเมื่อเทียบกับการเรนเดอร์ เอาต์พุตมีขนาดตั้งแต่ไม่กี่ KB ไปจนถึงหลายสิบ KB ขึ้นอยู่กับจำนวนฟิลด์และการฝังฟอนต์ โปรไฟล์คือ structural ตามที่ระบุ

ค่าของฟิลด์จะกลายเป็นเนื้อหาของเอกสาร อย่าใส่ข้อมูลลับลงในฟิลด์ฟอร์มหากต้องส่งคืน PDF ผ่านช่องทางที่ไม่น่าเชื่อถือ เส้นทางแบบ base64 ไม่มีผลข้างเคียงต่อระบบไฟล์ เอาต์พุตแบบไฟล์อยู่ภายใต้การควบคุมของเกต

ข้อกล่าวอ้างข้อกำหนดข้อรหัสอ้างอิง (reference_id)
ฟิลด์ฟอร์มถูกเก็บไว้ในดิกชันนารีฟิลด์ของฟอร์มแบบโต้ตอบISO 32000-2§12.7
ข้อมูลที่ให้มาจะกลายเป็นค่าของฟิลด์ISO 32000-2§12.7

fill_form เป็นเครื่องมือระดับ Pro เซิร์ฟเวอร์จะลงทะเบียนเครื่องมือนี้เฉพาะเมื่อตรวจพบแพ็กเกจ Pro ได้ตอนบูต (ตรวจสอบด้วย class_exists()) การติดตั้งใช้งานแบบ Core จะไม่เปิดเผยเครื่องมือนี้

ช่องทางการรับส่ง (Transport)พร้อมใช้งานหมายเหตุ
MCP (stdio)ใช่ (Pro)ปรากฏเฉพาะเมื่อมีการติดตั้ง Pro เท่านั้น
RESTใช่ (Pro)เช่นเดียวกัน
gRPCใช่ (Pro)เช่นเดียวกัน

fill_form อยู่ในระดับควรระมัดระวังเพราะเป็นการแก้ไขเนื้อหาที่ย้อนกลับได้ output_pdf อยู่ในระดับต้องอนุมัติ และลดระดับเป็นตรวจสอบในโหมด base64 (ระดับความเสี่ยง HITL)

เอาต์พุตแบบ Base64:

{ "allowed": true }

เอาต์พุตแบบไฟล์จะส่งคืนซองข้อมูล challenge ตามที่อธิบายไว้ใน output-approval