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

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

26 февраля 2020 PHP

TCPDF открытая PHP библиотека для генерации PDF документов на лету, которая включает полную поддержку Unicode UTF-8. Библиотека очень проста в использовании и имеет множество настроек, а так же входит в состав многих популярных CMS и фреймворков.

Установка библиотеки TCPDF

Скачиваем последнюю версию библиотеки отсюда и распаковываем архив.

Я создал отдельную папку tcpdf и распаковал все файлы в неё.

Подключаем из папки файл tcpdf.php к нашему проекту. У меня получилось так:

require_once('tcpdf/tcpdf.php');

Теперь когда библиотека установлена и подключена можно пользоваться всеми её возможностями.

Использование библиотеки 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() — текст

Остались вопросы по статье? Задайте их прямо сейчас!
Похожие записи
Как создать чат-бота ВКонтакте

В этом руководстве создадим чат-бота ВКонтакте, которого можно добавить не только в сообщения группы, но и в групповую беседу. Бот может прослушивать все сообщения в беседе, и если в каком-то из них будет содержаться определенное слово, фраза или часть текста, Читать далее

Простая интеграция Яндекс.Кассы на PHP

На сегодняшний день Яндекс.Касса - это один из самых популярных мерчантов для подключения оплаты на любом сайте. Касса позволяет принимать платежи с помощью банковских карт и Яндекс.Денег, а так же подключить онлайн-кассу. Если у вас интернет-магазин на одной из популярных Читать далее

Вывод постов из Instagram на сайт с помощью API

У инстраграма нет готового виджета для вывода постов на сайте. В прошлой статье мы рассматривали как создать Instagram виджет для сайта с помощью конструктора. Это самый простой и быстрый способ, и на мой взгляд самый лучший. Единственный его минус, как Читать далее

PHP классы, объекты, методы

Абсолютно любой предмет из нашей жизни мы можем описать по его характеристикам и состоянию, а так же воздействовать на это состояние. Например, ваш автомобиль имеет определенный цвет, марку, двигатель и т.д. Кроме того он может ехать, стоять, набирать или сбавлять Читать далее

Удалить значение из массива на PHP

Удалить значение из массива по ключу на PHP довольно простая задача, но вот когда необходимо удалить элемент массива именно по значению, то тут возникают небольшие сложности. Вроде бы банальная задача, но придется воспользоваться небольшой хитростью. В этой статье рассмотрим как Читать далее

Создание чат-бота для Viber

В этой статье рассмотрим как создать простого чат-бота для Viber, который будет принимать и отправлять сообщения в чат. Шаг 1 Итак, для начала необходимо зарегистрироваться в сервисе Viber Admin Panel по этой ссылке. Шаг 2 Создаём бота. Для этого заполняем Читать далее

Регулярные выражения PHP: preg_match, preg_split, preg_replace

Регулярные выражения - это мощный алгоритм сопоставления с образцом, который может быть выполнен в одном выражении. Регулярные выражения используют арифметические операторы, такие как (+, -, ^) для создания сложных выражений. Регулярные выражения помогают вам выполнять такие задачи, как проверка адресов Читать далее

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

*

code