property FormHandle: FPDF_FORMHANDLE; // read only
FormHandle은 현재 로드된 document를 위해 FPDFDOC_InitFormFillEnvironment로 생성된 raw PDFium FPDF_FORMHANDLE을 노출합니다. 이 handle은 PDFium의 interactive-form layer로 들어가는 관문이며, 모든 FORM_* 및 FPDF_FFL* function이 기대하는 parameter입니다. form field rendering, mouse / keyboard event delivery, focus tracking, JavaScript / XFA callback을 제어합니다(PDFium fpdf_formfill.h)
Active가 True가 되면 handle이 생성되고, Active가 False로 돌아가거나 component가 freed되면 삭제됩니다. 이 값은 opaque하고 수명이 짧다고 생각하세요 — 한 번의 load/unload cycle을 넘겨 저장하지 말고, FPDFDOC_ExitFormFillEnvironment를 직접 호출하지 마세요. 수명 관리는 component가 맡습니다
FormHandle은 고급 property로, 상위 수준의 FormField / FormFieldAt property가 충분히 세분화되지 않을 때 저수준 form event(custom mouse / keyboard delivery, programmatic field focus, scripted appearance regeneration, XFA refresh)를 라우팅하는 데 유용합니다. form rendering의 경우 VCL TPdfView가 이미 이 handle을 paint loop에 연결해 두므로, 제공된 viewer를 우회하거나 대체 event pipeline을 구현할 때만 수동 사용이 필요합니다
nil을 반환합니다. PDFium form-fill API를 호출하기 전에 항상 확인하세요
var FH: FPDF_FORMHANDLE;
Pdf1.Active := True;
FH := Pdf1.FormHandle;
if Assigned(FH) then
FPDF_FFLDraw(FH, Bmp, Pdf1.Page, 0, 0, 800, 600, 0, FPDF_ANNOT);