
Hyperref パッケージを使用してフォームを作成しています。フォームに入力された情報を保存できるようにしたいと思います。
現在、添付情報を含む電子メール クライアントを自動的に開くことができます。
\documentclass{article}
\RequirePackage{hyperref}
\begin{document}
\begin{Form}[action=mailto:[email protected],encoding=html, method=post]
\TextField[charsize={10pt},multiline=true,height={5mm},width={5cm},name={text_info},bordercolor={0.2 0.2 0.7},default={}]{}
\Submit{Submit}
\end{Form}
\end{document}
によるとこれ、次の方法でフォームをローカルに保存できるはずです:
\documentclass{article}
\RequirePackage{hyperref}
\begin{document}
\begin{Form}[action=my_form_response.doc,encoding=html, method=get]
\TextField[charsize={10pt},multiline=true,height={5mm},width={5cm},name={text_info},bordercolor={0.2 0.2 0.7},default={}]{}
\Submit{Submit}
\end{Form}
\end{document}
ただし、送信ボタンをクリックすると、「フォームを送信するための URL を開くときにエラーが発生しました」というエラーが表示されます。
質問: フォーム データをローカルに保存できますか? 方法は?
答え1
パラメータaction
は、入力されたフォームをサーバーに送信する (CGI スクリプトの URL を指定する) か、電子メールを送信する (mailto:
最初の例で示したように、 をプレフィックスとして電子メールを指定する) 場合にのみ使用できます。データをファイルに保存するには、代わりにカスタム JavaScript アクションを含むボタンを使用する必要があります。
\documentclass{article}
\RequirePackage{hyperref}
\begin{document}
\begin{Form}
\TextField[charsize={10pt},multiline=true,height={5mm},width={5cm},name={text_info},bordercolor={0.2 0.2 0.7},default={}]{}
\PushButton[onclick={this.exportAsText()}]{Submit}
\end{Form}
\end{document}
このようにして、フォームデータはCSV形式ユーザーは、結果のファイルをディスクに保存するように求められます。これにはAdobe Acrobatの有料版が必要です。無料のAdobe Readerではこの機能は有効になっていません(Adobe Experience Manager フォーム)。
exportAsText
上記の例を次のいずれかに変更すると、他の出力形式を実現できます。
exportAsFDF
データをAdobe Forms データ形式、PDF 形式のよりシンプルなバージョンです。Adobe ソフトウェアを使用してデータをさらに処理する場合に便利です。exportAsXFDF
使用Adobe XML フォーム データ形式これは、Adobe ソフトウェアおよびすべての XML パーサーによってさらに処理できます。