function ReplaceFormTextAndKeepSelection(const Text: WString): Boolean;
| Text | WString. 포커스를 가진 필드의 현재 선택 위에 쓰일 텍스트입니다. 빈 문자열을 넘기면 선택이 삭제됩니다 |
뷰어의 활성 페이지에서 현재 포커스를 가진 양식 위젯 안의 선택 텍스트를, 페이지의 폼 핸들로 PDFium의 FORM_ReplaceAndKeepSelection을 호출해 교체합니다
교체 텍스트는 선택을 접지 않고 호출 뒤에도 선택 상태로 유지되므로, 이어지는 호출이 다시 덮어쓰거나 확장할 수 있습니다. 이는 네이티브 텍스트 컨트롤의 타이핑 모델과 일치하며 IME 조합이나 예측 텍스트 같은 점진적인 코드 주도 입력에 어울립니다
빈 문자열을 넘기면 현재 선택이 삭제됩니다. 래퍼는 NUL 와이드 문자에 대한 포인터를 넘겨서 PDFium이 nil 버퍼를 받지 않게 합니다
성공하면 연관된 TPdf 페이지 씬이 무효화되고 뷰가 다시 그려져 새 필드 값이 즉시 보입니다
permFillForms나 permModify 권한이 없거나, 포커스를 가진 위젯이 없거나, 포커스된 위젯이 다른 페이지에 있으면 문서를 건드리지 않고 False를 반환합니다fiTextField이거나 ffChoiceEdit 플래그를 가진 fiComboBox여야 하고 ffReadOnly를 가져서는 안 됩니다FormHandle을 직접 통과하므로, 사용자 양식 입력이 꺼져 있어도 프로그래밍 방식 편집은 계속 동작합니다// Overtype the selected characters of the focused field,
// keeping the insertion selected for the next step
if PdfView1.FocusedFormFieldText <> '' then
PdfView1.ReplaceFormTextAndKeepSelection('NEW');