Документация PDFiumPas

FormFieldAt Свойство

Эта запись API сохраняет идентификаторы, сигнатуры, блоки кода и термины PDF в исходном виде
Компонент: TPdf  ·  Модуль: PDFium
Читает или записывает значение поля формы, расположенного по заданной координате страницы

Синтаксис

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

Описание

FormFieldAt находит аннотацию виджета AcroForm, которая содержит точку (X, Y) в координатах страницы, и предоставляет ее значение как строку Unicode. Координаты заданы в пользовательском пространстве PDF, начало отсчета находится в левом нижнем углу страницы, а единицы измерения -- пункты (1/72 inch). Чтение свойства возвращает текущее значение поля (/V), декодированное в WString; запись обновляет поле и заново создает streams внешнего вида, чтобы новое значение отрисовалось при следующем paint

Возвращает пустую строку, когда Active равно False, когда документ не содержит AcroForm или когда координата не попадает ни в один виджет. Правило сопоставления повторяет FormFieldInfoAt: учитываются только прямоугольники виджетов, без проверки по отображаемой области, а при перекрытии выигрывает верхний виджет на слое. Записи не имеют эффекта, если координата не попадает ни в один виджет

Для виджетов флажков и переключателей значение определяется по правилам PDF — присваивание 'Off' очищает поле, а присваивание значения, совпадающего с именем состояния /AP /N виджета (обычно 'Yes' или export value), включает его. Для текстовых полей любое присвоенное значение становится новым содержимым /V. Списки и комбинированные списки принимают export value, связанное с одним из вариантов. Если тип поля неясен, сначала используйте FormFieldInfoAt, чтобы проверить FieldType

Примечания

Пример

// 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