Как создать редактируемую форму Pdf в php

У меня есть простая форма, и я хочу сделать ее редактируемой в pdf с помощью php. Но pdf создает форму, но я не могу редактировать и отправлять ее, по какой-либо причине или я не могу редактировать pdf с помощью php?

мой код

<?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;
?>

Я использую mPDF Пример Url и Пример Формы

4 ответов


вы также можете использовать TCPDF. TCPDF - Это бесплатный PHP-класс с открытым исходным кодом для создания PDF-документов. TCPDF-единственная PHP-библиотека, которая включает полную поддержку UTF-8 Unicode и языков справа налево, включая двунаправленный алгоритм.

посетите эту ссылку для получения дополнительной информации. http://www.tcpdf.org/


то, что вы делаете, - это просто распечатать форму в PDF, но не предоставлять редактируемые функции. Ваша форма по-прежнему не редактируется. Вы должны использовать Acrobat SDK чтобы сделать редактируемые формы.


нужно дать свой собственный ответ, так как @Christian дал почти правильный и рабочий URL примера, и я нашел это на Github для активных форм но когда я попробовал свою html-форму с ним, то это дает мне ошибку что-то вроде,

неустранимая ошибка: вызов неопределенного метода mPDF:: Error() .... mpdf\classes\mpdfform.php на линии 839

после некоторого поиска я обнаружил, что отсутствует name атрибут в тексте формы поле и когда я добавил атрибут он работал хорошо.

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

проблема не заканчивается этим, когда я отправляю форму, то в консоли браузера ничего не отображается. Тогда я использовал php: / / input на стороне сервера и он показал мне какой-то ответ, который находится в FDF (формат данных форм) и должен быть проанализирован, чтобы получить фактические данные. Я не даю попробовать разобрать его, но нашел несколько полезных URL-адресов, которыми я делюсь вот,

  1. PHP: извлечение полей fdf в виде массива из PDF
  2. https://answers.acrobatusers.com/Parse-FDF-response-q72665.aspx
  3. PHP regex код для извлечения данных FDF
  4. http://php.net/manual/en/ref.fdf.php

    ссылки ниже


чтобы сделать поля редактируемыми, необходимо добавить следующую строку:

$mpdf->useActiveForms = true;

Это должно работать для mPDF 5.3 и выше.