PDF скачать HTML2PDF.
Вопрос
Я использую класс HTML2PDF для генерации PDF. В моей проблеме он генерирует PDF для HTML-кода, но он не дает опцию диалогового окна для загрузки этого PDF. ПЛЗ ПОМОГИТЕ, моя связь следующая.
<?php
ob_start();
include(dirname(__FILE__).'/res/pdf_demo.php');
$content = ob_get_clean();
// conversion HTML => PDF
require_once(dirname(__FILE__).'/../html2pdf.class.php');
try
{
$html2pdf = new HTML2PDF('P','A4', 'fr', false, 'ISO-8859-15');
$html2pdf->pdf->SetDisplayMode('fullpage');
$html2pdf->writeHTML($content, isset($_GET['vuehtml']));
$html2pdf->Output('pdf_demo.pdf');
}
catch(HTML2PDF_exception $e) { echo $e; }
?>
Решение
Чтобы предложить загрузку из вашего браузера, вам нужно добавить заголовок для привязанности ...
header("Content-Disposition: attachment; filename=sample.pdf");
Добавьте вышеуказанный код в начале страницы, а затем продолжите преобразование HTML2PDF ..
Другие советы
Из документации, метод вывода
/**
* Send the document to a given destination: string, local file or browser.
* Dest can be :
* I : send the file inline to the browser (default). The plug-in is used if available. The name given by name is used when one selects the "Save as" option on the link generating the PDF.
* D : send to the browser and force a file download with the name given by name.
* F : save to a local server file with the name given by name.
* S : return the document as a string. name is ignored.
* FI: equivalent to F + I option
* FD: equivalent to F + D option
* true => I
* false => S
*
Изменить эту строку $html2pdf->Output('pdf_demo.pdf');
к$html2pdf->Output('pdf_demo.pdf', 'D');
И он заставит браузер автоматически загрузить файл PDF.
Отправить PDF в браузер с определенным именем
$ HTML2PDF-> Выход ('document_name.pdf');
$ html2pdf-> вывод ('document_name.pdf', false);
$ html2pdf-> Вывод ('document_name.pdf', '');
$ html2pdf-> Вывод ('document_name.pdf', 'i');
Заставить браузер загрузить файл PDF с определенным именем
$ html2pdf-> Выход ('document_name.pdf', 'd');
Напишите содержимое файла PDF на сервере
Внимание, это письмо на вашем сервере должно использоваться с осторожностью. Проверка не производится на существование файла
$ html2pdf-> Выход (каталог / fileName_xxxx.pdf ',' f ');
Получить содержимое PDF, а затем сделайте все, что вы хотите
$ content_pdf = $ html2pdf-> Вывод ('', true);
$ content_pdf = $ html2pdf-> Вывод ('', 's');