PDF 양식

hyperref입력 가능한 PDF 폼을 만들 수 있습니다. 텍스트 필드, 체크박스, 드롭다운, 버튼을 PDF 뷰어에서 바로 작성하게 할 수 있습니다. 모든 필드는 Form 환경 안에 둡니다. 이 페이지에서는 각 필드 명령과 데이터 전송을 다룹니다.

Form 환경

모든 대화형 필드는 \begin{Form} … \end{Form} 안에 있어야 합니다. 선택 인수 [parameters](key=value)는 주로 “전송” 버튼의 동작, 예를 들어 데이터를 보낼 위치를 설정합니다. 먼저 hyperref를 불러와야 합니다.

latex
\usepackage{hyperref}
...
\begin{Form}
  \TextField{お名前}\par
  \CheckBox{利用規約に同意する}\par
  \ChoiceMenu[combo]{所属}{大学,企業,その他}
\end{Form}

필드 종류

명령생성되는 것
\TextField{ラベル}텍스트 입력 필드
\CheckBox{ラベル}체크박스
\ChoiceMenu[...]{ラベル}{選択肢}메뉴 또는 라디오 그룹(combo, radio, popdown)
\PushButton{ラベル}누름 버튼(JavaScript와 함께 쓰기도 함)
\Submit{ラベル} / \Reset전송 버튼 / 초기화 버튼

자주 쓰는 옵션

각 필드는 [...] 안에 옵션을 받습니다. name=(필드 이름, 데이터 취득이나 스크립트에서 사용), width=/height=, default=(초기값), bordercolor/backgroundcolor, charsize(글자 크기), align(0=왼쪽, 1=가운데, 2=오른쪽) 등이 있습니다. \ChoiceMenu에서는 combo / radio / popdown으로 표시 방식을 고릅니다.

latex
\TextField[name=email, width=5cm, default={例: [email protected]}]{メール}

데이터 전송과 실무 메모

전송 버튼은 Formaction(보낼 URL이나 이메일)에 따라 폼 데이터를 보낼 수 있습니다. 폼은 PDF 뷰어(Acrobat Reader 등)에서 작성하는 방식이며, JavaScript와 렌더링 지원은 뷰어마다 다릅니다. 검증이나 스크립트 같은 고급 동작이 필요하면 insdljs 또는 AcroTeX의 eforms를 사용합니다. 넓은 호환성을 원한다면 폼은 단순하게 유지하는 편이 안전합니다.