Создание умных PDF-форм: от макета до скриптов

Иван Корнев·26.05.2026·5 мин

Чтобы создать интерактивный PDF, подготовьте статичный макет документа, откройте его в редакторе (например, Adobe Acrobat Pro) и используйте инструмент «Подготовка формы». Добавьте текстовые поля, чекбоксы и кнопки, задайте уникальные имена элементам, настройте порядок табуляции и при необходимости добавьте JavaScript для логики автозаполнения.

Интерактивная форма превращает пассивный документ в рабочий инструмент: данные вводятся прямо в файл, проверяются на лету и могут автоматически переноситься между полями. Это экономит время пользователей и упрощает обработку заявок, договоров и анкет.

Оглавление

  1. Инструменты и подготовка
  2. Этапы создания формы
  3. Работа с элементами: поля и кнопки
  4. Настройка автозаполнения и логики
  5. [Порядок перехода (Табуляция)]#poryadok-perehoda-tabulyatsiya)
  6. Частые ошибки
  7. FAQ

Инструменты и подготовка

Для профессиональной работы с интерактивными формами стандартом является Adobe Acrobat Pro. Он позволяет добавлять сложные элементы, настраивать действия кнопок и писать скрипты на JavaScript.

Альтернативы:

  • Foxit PDF Editor — мощный аналог с похожим функционалом.
  • LibreOffice Draw — бесплатный вариант для базовых форм (экспорт в PDF с сохранением полей).
  • Онлайн-сервисы (Sejda, PDFescape) — подходят для простых задач без сложной логики.

Не пытайтесь сделать сложную форму только в Microsoft Word. Экспорт из Word часто ломает верстку полей, а настроить скрипты или условия видимости там невозможно. Word подходит только для создания визуального макета.

Этапы создания формы

Процесс разработки делится на три четких этапа. Нарушение последовательности приводит к необходимости переделывать работу.

  1. Верстка макета. Создайте дизайн формы в Word, InDesign или Figma. Оставьте пустые места или подчеркнутые линии там, где будут поля ввода. Экспортируйте документ в обычный PDF.
  2. Добавление элементов. Откройте файл в Acrobat Pro. Перейдите во вкладку «Инструменты» → «Подготовка формы». Программа может попытаться распознать поля автоматически, но лучше добавить их вручную для точности.
  3. Настройка свойств. Для каждого элемента задайте имя, тип данных, подсказки и скрипты.

Работа с элементами: поля и кнопки

Каждый элемент формы имеет свойства, которые определяют его поведение. Ключевой параметр — Имя поля (Field Name).

Основные типы полей

ЭлементКогда использоватьВажная настройка
Текстовое полеФИО, адрес, комментарииОграничение длины, формат (число, дата)
Флажок (Checkbox)Выбор нескольких опций (например, услуги)Экспортное значение (On/Off)
Переключатель (Radio)Выбор одного варианта из группы (пол, статус)Группа должна иметь одно имя, но разные значения экспорта
Выпадающий списокБольшой список вариантов (города, должности)Возможность редактирования пользователем (Yes/No)
КнопкаОтправка, сброс, печать, переходДействие при нажатии (Submit form, Reset form)

Правила именования

Имена полей должны быть логичными и латиницей, особенно если вы планируете использовать скрипты.

  • ✅ Хорошо: client_name, order_date, agree_terms
  • ❌ Плохо: Поле1, Text Box 45, Имя клиента

Используйте префиксы для группировки. Например, addr_city, addr_street, addr_index. Это поможет позже обращаться к ним в скриптах или быстро находить в списке полей.

Настройка автозаполнения и логики

Автозаполнение избавляет пользователя от рутинного ввода одних и тех же данных. Реализовать это можно двумя способами.

Способ 1: Одинаковые имена полей

Если вам нужно, чтобы текст, введенный в одном месте, появлялся в другом (например, ФИО заявителя в шапке и в подвале договора), просто дайте этим полям одинаковое имя.

  • Поле 1 имя: full_name
  • Поле 2 имя: full_name

При вводе данных в первое поле, второе обновится мгновенно. Это работает без программирования.

Способ 2: JavaScript (Расчетные значения)

Для более сложной логики (например, автоматический расчет суммы или копирование значения с изменением регистра) используются скрипты.

В свойствах поля перейдите на вкладку «Вычисления» (Calculate) или «Действия» (Actions).

Пример: Копирование значения из поля A в поле B с помощью скрипта. В поле-приемнике на вкладке «Вычисления» выберите «Пользовательский скрипт вычисления» и вставьте:

var source = this.getField("source_field_name");
event.value = source.value;

Пример: Валидация email. На вкладке «Проверка введенных данных» (Validate) можно добавить скрипт, который проверит наличие символа @:

if (event.value && event.value.indexOf("@") == -1) {
    app.alert("Пожалуйста, введите корректный Email");
    event.rc = false;
}

Порядок перехода (Табуляция)

Пользователи часто заполняют формы с клавиатуры, нажимая Tab. Если курсор прыгает хаотично, это раздражает и приводит к ошибкам.

В Adobe Acrobat:

  1. Откройте панель «Подготовка формы».
  2. Нажмите кнопку «Порядок табуляции» (Tab Order).
  3. Выберите «Упорядочить по табам» (Order tabs manually) или «По строкам» (By rows), если верстка строгая.
  4. Пройдитесь по всем полям, нажимая Tab, чтобы убедиться, что логика соответствует чтению слева направо и сверху вниз.

Скрытые поля (которые появляются по условию) также должны быть включены в порядок табуляции, иначе пользователь может «потерять» фокус ввода.

Частые ошибки

  1. Дублирование имен там, где не нужно. Если два разных человека должны ввести свои имена, а вы назвали оба поля name, данные будут одинаковыми. Уникальные сущности требуют уникальных имен.
  2. Отсутствие ограничений ввода. В поле «Год рождения» можно ввести текст, а в «Телефон» — буквы. Всегда ставьте маску ввода или формат числа там, где это критично.
  3. Мелкие области клика. Чекбоксы и радиокнопки должны быть достаточно большими. Увеличьте размер самого элемента, даже если галочка визуально маленькая.
  4. Игнорирование мобильных устройств. Проверяйте форму в Adobe Reader на смартфоне. Слишком сложные скрипты или мелкие поля могут работать некорректно.
  5. Забытая кнопка «Сброс». Пользователь должен иметь возможность очистить форму, если ошибся в начале. Добавьте кнопку с действием «Reset form».

FAQ

Можно ли сделать PDF-форму бесплатно? Да, базовые поля можно создать в LibreOffice или онлайн-редакторах. Однако сложная логика (условия, скрипты) обычно требует платного ПО вроде Adobe Acrobat Pro или Foxit PhantomPDF.

Будет ли работать автозаполнение в браузере? Большинство современных браузеров (Chrome, Edge) позволяют заполнять простые поля. Однако JavaScript-логика и сложные действия кнопок могут не сработать. Для гарантированной работы рекомендуйте пользователям открывать файл в Adobe Acrobat Reader.

Как защитить форму от изменений дизайна, но разрешить заполнение? При сохранении файла используйте функцию «Защита» (Protection). Установите пароль на изменение документа, но разрешите «Заполнение полей формы и подписывание».

Почему поля смещаются при открытии на другом компьютере? Это происходит, если шрифты не встроены в PDF. При создании макета убедитесь, что все шрифты внедрены (Embed fonts), или используйте стандартные системные шрифты (Arial, Times New Roman).