PDFium Component Docs

FormFieldAt 속성

이 API 항목은 식별자, 시그니처, 코드 블록, PDF 용어를 원래 형태로 유지합니다.
컴포넌트: TPdf  ·  유닛: PDFium
지정한 page 좌표에 있는 form field의 값을 읽거나 씁니다

구문

property FormFieldAt[X, Y: Single]: WString; // read / write

설명

FormFieldAt는 page-space 점 (X, Y)를 포함하는 AcroForm widget annotation을 찾아 그 값을 Unicode 문자열로 노출합니다. 좌표는 PDF user space를 사용하며 원점은 page의 왼쪽 아래 모서리이고 단위는 point(1/72 inch)입니다. 이 속성을 읽으면 현재 field value(/V)를 WString으로 디코딩해 반환하고, 쓰면 field를 갱신한 뒤 appearance stream을 다시 생성하여 다음 paint에서 새 값이 렌더링되도록 합니다

ActiveFalse이거나 문서에 AcroForm이 없거나 좌표를 덮는 widget이 없으면 빈 문자열을 반환합니다. 매칭 정책은 FormFieldInfoAt와 같아서 widget rectangle만 사용하고 appearance-bound hit testing은 하지 않으며, 겹칠 때는 가장 위에 있는 widget이 선택됩니다. 좌표가 어떤 widget도 맞히지 못하면 쓰기는 아무 작업도 하지 않습니다

checkbox와 radio button widget의 값 의미는 PDF spec을 따릅니다. 'Off'를 지정하면 field가 지워지고, widget의 /AP /N on-state name에 맞는 값을 지정하면('Yes'나 export value가 흔함) 체크됩니다. text field에는 지정한 모든 값이 새 /V 내용이 됩니다. list / combo box는 option entry 중 하나에 연결된 export value를 받습니다. field type이 확실하지 않으면 먼저 FormFieldInfoAtFieldType를 확인하세요

비고

예제

// Toggle a checkbox located at (120, 300) on the current page.
if Pdf1.FormFieldAt[120.0, 300.0] = 'Off' then
  Pdf1.FormFieldAt[120.0, 300.0] := 'Yes'
else
  Pdf1.FormFieldAt[120.0, 300.0] := 'Off';

참고 항목

FormFieldInfoAt, HasFormFieldAt, FormField, FormFieldCount