1

これが私の状況です。ユーザーが PDF フォームに入力できる HTML ページ内で編集可能な PDF をレンダリングする Web ベースのアプリケーションがあります。HTML ページ (PDF の外側) には、ユーザーがクリックして PDF 入力をサーバーに送信できる送信ボタンがあります。

これはすべて、標準の Acroforms で機能するようになりました。仕組みは次のとおりです。

  1. HTML 送信ボタンは、javascript pdf.postMessage API を使用して、フォームを送信したいというメッセージを PDF に送信します。

    pdf.postMessage(["送信フォーム"]);

  2. PDF内には、このメッセージを受け取ってこれを行うJavaScriptがあります:

    function myOnMessage(aMessage) { if (aMessage[0] == "submitForm") { var fdf = this.myDoc.exportAsFDFStr(true, true, null, true); this.myDoc.hostContainer.postMessage(["saveFdf", fdf]); } }

  3. ホスト コンテナはこのメッセージを受信し、javascript/jQuery を使用して FDF をサーバーに送信します。

    pdfObject.messageHandler = { onMessage: function(msg) { if (msg[0]=="saveFdf") { $("#fdf").val(msg[1]); $("#entryForm").submit(); } } }

したがって、これはすべて AcroForms で機能します。ただし、XFA LiveCycle フォームは FDF をサポートしていないため、明らかに機能しません。

私が探しているのは、XFA JavaScript のこの行に相当するものです。

var fdf = this.myDoc.exportAsFDFStr(true, true, null, true);

基本的には、サーバーに送信できる単一の文字列にユーザー入力をシリアル化できるようにする API 呼び出しです。私は XFA JavaScript のドキュメントを見てきましたが、それを見つけるのに十分なほど理解するのに苦労しています。

PDF自体にHTTPボタンを作成する方法はわかりますが、HTMLを返すためブラウザに投稿リクエストを実行させたいので、それは私がやりたいことではありません。

これはできますか?ありがとう。

4

0 に答える 0