2013-07-12 24 views
8

私は単純なフォームを持っていて、私はそれをpdfファイルで編集可能にしたいと思います。しかし、pdfはフォームを作成していますが、私はそれを編集して提出することはできません。何らかの理由で、または私はpdfをPHPで編集できません。PHPで編集可能なPDFフォームを作成するには

私のコードは

<?php 
    define('_MPDF_PATH','/'); 
    include("mpdf.php"); 

    $html = ' 
     <form action="test.php"> 
      <input type="text" id="name" value="name" /> 
      <input type="reset" name="reset" value="Reset" /> 
      <input type="submit" name="submit" value="Submit" /> 
     </form>'; 

    $mpdf=new mPDF('c'); 

    $mpdf->default_lineheight_correction = 1.2; 

    // LOAD a stylesheet 
    $stylesheet = file_get_contents('mpdfstyletables.css'); 
    $mpdf->WriteHTML($stylesheet,1); // The parameter 1 tells that this is css/style only and no body/html/text 
    $mpdf->SetColumns(2,'J'); 
    $mpdf->WriteHTML($html); 
    $mpdf->Output('test.pdf','D');// 
    exit; 
?> 

である私は何をやっているMPDFExample UrlForm Example

+0

あなたはより多くの情報を提供できますか交尾?そのPDFは何かを提出しますか?送信ボタンを押すと何も起こりませんか?あなたのtest.phpは呼ばれていますか? (確かにPDFはこれを全く行うことはできませんが、何となく最初のものです...) – ToBe

+0

いいえ、 '入力ボックスやドロップダウンの変更 'もなく、' submitボタン'をクリックしても 'change'はありません。 'Elements'は' html要素 'のように動作しません。 –

+0

なぜ、PDFがWebサービスにデータを提出できるのか?参考資料はありますか? – ToBe

答えて

1

@Christianは、例のほとんど正しいと作業URLを与えたと私はGithub for active forms上でこれを見つけたが、私はそれで私のHTMLフォームをしようとしたとき、それは私のようなものをエラー与え、

として、私自身の答えを与える必要があります

Fatal error: Call to undefined method mPDF::Error() .... mpdf\classes\mpdfform.php on line 839

検索の結果、フォームのテキストフィールドにnameという属性が見つからないことがわかりました。属性を追加するとうまくいきました。

<input type="text" id="name" value="name" name="field_name" /> 

問題はこれで終わりません。フォームを送信すると、ブラウザのコンソールに何も表示されません。それから、私はサーバ側でphp://inputを使用しました。私はFDF(forms data format)であり、実際のデータを取得するために解析する必要がある何らかの応答を示しています。私はそれを解析する試みを与えるdin'tが、私はここで共有していますいくつかの有用なURLを見つけ、リンク

以下

  1. PHP: Extract fdf fields as an array from a PDF
  2. https://answers.acrobatusers.com/Parse-FDF-response-q72665.aspx
  3. PHP regex code to extract FDF data
  4. http://php.net/manual/en/ref.fdf.php

1

を使用しているだけでPDFにフォームを印刷することですが、編集可能な機能を提供しません。フォームはまだ編集できません。編集可能なフォームを作成するには、Acrobat SDKを使用する必要があります。

+0

'Acrobat API'の使用についてお考えですか?それを 'php'でどのように使うことができますか? –

+0

Acrobat JavaScript SDKの.http://www.adobe.com/devnet/acrobat/overview.htmlを使用することができます。特に、正しいAcrobat SDKテクノロジの選択 – Raptor

3

TCPDFを使用することもできます。 TCPDFは、PDFドキュメントを生成するためのフリーでオープンソースのソフトウェアPHPクラスです。 TCPDFは、双方向アルゴリズムを含むUTF-8 Unicodeと右から左への言語を完全にサポートする唯一のPHPベースのライブラリです。

詳細については、そのリンクを参照してください。 http://www.tcpdf.org/

0

するフィールドを編集可能にするには、この行を追加する必要があります

$mpdf->useActiveForms = true; 

これはMPDF 5.3以降で動作するはずです。

関連する問題