HTML2FPDF распечатать страницу результатов в формате PDF - PullRequest
0 голосов
/ 11 ноября 2009

Я пытаюсь использовать HTML2FPDF (http://html2fpdf.sourceforge.net/) для создания PDF страницы, но не могу заставить его работать должным образом.

Моя страница состоит из jQuery для отображения графика. Я хочу, чтобы график и другой текст на странице экспортировался в формате PDF.

http://portal.flyingstartlifestyle.360southclients.com/leanne/leanne.php <- график с кодом html2fpdf внизу страницы. </p>

HTML2FPDF код:

function createPDF() {

 define('ABSPATH', dirname(__FILE__).'/');

 require(ABSPATH.'classes/pdf/html2fpdf.php');

 $pdf = new HTML2FPDF();
 $pdf->AddPage();

 $html = ob_get_contents();
 //$html = htmlspecialchars($html);

 if ($html) {

  $fileName = "testing.pdf";

  $pdf->WriteHTML($html);
  $pdf->Output("pdfs/".$fileName);

  echo "<p>PDF file is generated successfully! <a href=\"pdfs/$fileName\" target=\"_blank\">Click here</a> to open it.</p>";

 } else {

  echo "<p>There has been an error in creating your PDF.</p>";

 };


};

Если я покажу строку "$ html = htmlspecialchars ($ html);" он печатает pdf текст страницы, в противном случае он создает пустой PDF. Любые идеи, как я могу перенести свой график в PDF?

Приветствия

Ответы [ 3 ]

2 голосов
/ 11 ноября 2009

Несколько лет назад я бился головой о стену, пытаясь конвертировать HTML в PDF в течение нескольких дней. То, что я хотел сделать, было действительно просто - сделать счет для клиентов в файл PDF. Сверху изображение (логотип), несколько абзацев и таблица со списком сборов.

Отверстие в форме моей головы на стене все еще там. Все бесплатные библиотеки, которые конвертируют вещи в PDF - все они отстой. Я нашел тот, который сосет меньше всего, это DomPDF. По крайней мере, один из них закончил работу, после недели страданий и отладки. Однако это не так быстро, если вы хотите создать сложный PDF-файл, возможно, вы захотите сделать это вне потока.

1 голос
/ 11 ноября 2009

Полагаю, я мог видеть ситуацию, когда вы могли бы использовать ajax для удаленного вызова и отправки всего html, который видит js.

Тогда удаленный вызов запишет файл этого html. Удаленный вызов отправит обратно имя файла для создаваемого PDF-файла.

Затем ваш js может предоставить ссылку на страницу обработки html2pdf, которая ссылается на файл, созданный при удаленном вызове.

Это сработает, но может быть немного.

Привет.

1 голос
/ 11 ноября 2009

Моя страница состоит из jQuery для отображения графика. Я хочу, чтобы график и другой текст на странице экспортировался в формате PDF.

jQuery интерпретируется браузером, а не сервером. Когда вы отправляете HTML для рендеринга в PDF, он не запускает Javascript. Вам нужно будет найти способ на самом деле генерировать изображение другим способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...