Для генерации pdf файла используем библиотеку mpdf на php с поддержкой кодировки UTF-8.
Ранее была рассмотрена генерация файла с помощью библиотеки tcpdf. Количество поддерживаемых в tcpdf стилей css очень ограничено, mpdf поддерживает большее количество стилей при генерации документа. Список поддерживаемых стилей приведен в руководстве.
Для подключения библиотеки и генерации pdf файла необходимо следующее:
-
Скачать и распаковать библиотеку в директорию, где будет генерироваться pdf файл.
-
Для вывода pdf документа без header и footer следует очистить буфер. Для этого после подключения header нужно добавить:
$GLOBALS['APPLICATION']->RestartBuffer();
Перед подключением footer:
die();
-
Записать html код в переменную следующим образом:
$html= <<<EOD
Разработка и сопровождение интернет-проектов от «1С-Рарус»
bitrix@rarus.ru
8(495)989-96-49
-
Подключить библиотеку
include("MPDF57/mpdf.php"); $mpdf=new mPDF();
-
Загрузить css файл в папку и записать содержимое файла в pdf документ.
$style = file_get_contents('style.css'); $mpdf->WriteHTML($style, 1);
-
Записать html код в pdf документ.
$mpdf->WriteHTML($html,2);
-
Для вывода pdf файла в браузере.
$mpdf->Output('pdf-file.pdf', 'I');
Для автоматической загрузки файла без вывода в браузер:
$mpdf->Output('pdf-file.pdf', 'D');