Создание PDF с помощью PHP и библиотеки TCPDF

26 февраля 2020 PHP
TCPDF открытая PHP библиотека для генерации PDF документов на лету, которая включает полную поддержку Unicode UTF-8. Библиотека очень проста в использовании и имеет множество настроек, а так же входит в состав многих популярных CMS и фреймворков.
Установка библиотеки TCPDF
Скачиваем последнюю версию библиотеки и распаковываем архив.
Я создал отдельную папку tcpdf и распаковал все файлы в неё.
Подключаем из папки файл tcpdf.php к нашему проекту. У меня получилось так:
require_once('tcpdf/tcpdf.php');Теперь когда библиотека установлена и подключена можно пользоваться всеми её возможностями.
Оптимизация HTML-кода сайта одна из мер по комплексному SEO-продвижению сайта. Если с самого начала делать сайт по общепринятым рекомендациям и стандартам, то потом ничего не придется переделывать, а сайт будет хорошо находиться различными поисковыми системами, такими как Яндекс и Google. Читайте все о seo продвижении чтобы правильно продвигать сайт в поисковых системах с самого начала его создания.
Использование библиотеки TCPDF
Рассмотрим простой пример генерации PDF документа с HTML текстом.
<?php
// Подключаем библиотеку
require_once('tcpdf/tcpdf.php');
// Создаем новый PDF документ
$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);
// Устанавливаем информацию о документе
$pdf->SetAuthor('Имя автора');
$pdf->SetTitle('Название документа');
// Устанавливаем данные заголовка по умолчанию
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
// Устанавливаем верхний и нижний колонтитулы
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
// Устанавливаем моноширинный шрифт по умолчанию
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
// Устанавливаем отступы
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
// Устанавливаем автоматические разрывы страниц
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
// Устанавливаем шрифт
$pdf->SetFont('dejavusans', '', 14, '', true);
// Добавляем страницу
$pdf->AddPage();
// Устанавливаем текст
$html = <<<EOD
<h1>Добро пожаловать в <span style="background-color:#CC0000;color:black;">TC</span><span style="background-color:#CC0000;color:white;">PDF</span>!</h1>
<i>Это пример работы библиотеки TCPDF.</i>
<p>Этот текст печатается с использованием метода <i>writeHTMLCell()</i>, но вы также можете использовать: <i>Multicell(), writeHTML(), Write(), Cell() и Text()</i>.</p>
<p>Пожалуйста, ознакомьтесь с документацией по исходному коду и другими примерами для получения дополнительной информации.</p>
EOD;
// Выводим текст с помощью writeHTMLCell()
$pdf->writeHTMLCell(0, 0, '', '', $html, 0, 1, 0, true, '', true);
// Закрываем и выводим PDF документ
$pdf->Output('document.pdf', 'I');
?>HTML текст выводится с помощью метода writeHTMLCell(). Можно так же использовать и другие методы, такие как, например: Multicell()— множественные ячейкиwriteHTML()— HTML кодCell() — ячейкаText() — текст

Добавить комментарий