
Этот вопрос связан сГенерация уникальных имен в текстовом поле
Я не могу использовать решение, приведенное в вопросе выше, поскольку я использую его hyperref
для создания своей PDF-формы.
В моем документе много таблиц, и я хотел бы создать в них форму pdf. Названия текстовых полей не важны, пользователь должен просто иметь возможность их заполнить.
Проблема в том, что когда пользователь пытается заполнить одно из текстовых полей в PDF-файле, другие поля также заполняются.
Если я использую \TextField{}
вместо \TextField{\ }
, текстовые поля не отображаются при открытии PDF-файла в Acrobat Reader.
\documentclass{article}
\usepackage{hyperref}
\begin{document}
\begin{Form}
\begin{tabular}{llll}
A & B & C & D \\
\TextField{\ } & \TextField{\ } & \TextField{\ } & \TextField{\ }\\
\TextField{\ } & \TextField{\ } & \TextField{\ } & \TextField{\ } \\
\TextField{\ } & \TextField{\ } & \TextField{\ } & \TextField{\ }
\end{tabular}
\end{Form}
\end{document}
решение1
Текстовому полю необходимо уникальное имя, но вы можете сгенерировать его, например, с помощью счетчика и новой команды:
\documentclass{article}
\usepackage{hyperref}
\newcounter{textfield}
\newcommand\AutoTextField{\stepcounter{textfield}\TextField[width=2cm,name=autotextfield\thetextfield]{}}
\begin{document}
\begin{Form}
\begin{tabular}{llll}
A & B & C & D \\
\AutoTextField & \AutoTextField & \AutoTextField & \AutoTextField\\
\AutoTextField & \AutoTextField & \AutoTextField & \AutoTextField \\
\AutoTextField & \AutoTextField & \AutoTextField & \AutoTextField
\end{tabular}
\end{Form}
\end{document}