Вопрос

Я использую класс 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');

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top