php создать pdf файл

Создание PDF файлов в PHP

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

В данном посту мы поговорим о том, как можно создавать PDF файлы используя язык PHP. Для генерации PDF-документов существует библиотека FDPF. Далее речь пойдет об её использовании, и перед этим, её следует скачать к себе на компьютер.

Разместить файлы библиотеки следует в рабочей директории проекта. Расположена библиотека может в разных директориях, в этом случае следует задать местоположение посредством переменной PHP library path. Давайте рассмотрим пример вывода строки «Hello world» в PDF файл. Для этого следует создать PHP файл, и прописать в нём следующее.

В результате будет создан PDF-документ следующего вида:

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

В самом начале мы задали константу FPDF_FONTPATH, эта константа указывает папку в которой находятся шрифты, используемые для генерации документа. Затем подключается сам файл библиотеки fpdf.php. После подключения файла библиотеки создаётся экземпляр класса FPDF(), далее вся работа происходит с объектом этого класса. Метод SetFont() устанавливает параметры шрифта для текста. Метод AddPage() указывает на создание новой страницы в PDF-документе. Добавить текст в документ можно посредством добавления ячейки. Добавляется ячейка посредством метода Cell(), для которой задаются размеры, а так же их содержимое. Ячеек в самом деле может быть целое множество, с их помощью можно формировать структуру документа. Непосредственное формирование документа выполняется через метод Output(). Как вы уже заметили, все названия методов интуитивно понятные.

Формирование таблицы в FPDF

Пример указанный выше довольно простой, и для лучшего понимания стоит сделать уже что-то по сложнее. Давайте выведем некоторые динамические данные в цикле, и сформируем таблицу в PDF-документе. Этот пример показывает работу с библиотекой, в случае с некоторыми динамическими данными. Для начала сделаем вывод заголовков таблицы. В связи с тем, что в PDF файлах нет табличной структуры как в HTML, построение табличных данных там происходит посредством набора ячеек, каждая из которых получает параметры ширины, шрифта, фоновой заливки, и цвета рамки.

В результате был сформирован PDF-документ такого вида:
php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

Первое, на что стоит обратить внимание в данном примере, это файл data-result.php который подключается после библиотеки FPDF. В данном файле формируется массив данных, который мы в дальнейшем будем использовать для генерации документа. Далее объявляется класс PDF, который является наследником класса FPDF. Класс содержит метод EventTable($event), в качестве входного параметра получает массив с данными. Метод создаёт строку в документе, с набором ячеек, с установленными параметрами шрифтов, и т.д. Вызывается метод в цикле, в котором передаются данные из функции getResult(). Функция getResult() возвращает массив, по сути, вместо функции может быть и обычная переменная с массивом данных.

По аналогии с формированием заголовков таблицы, можно заполнить таблицу уже готовыми данными. Для заполнения таблицы мы допишем код таким образом:

Результат формирования таблицы в PDF:
php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

Добавление изображения в FPDF

Добавляется изображения в документ довольно просто. Сделать это можно посредством метода Image().

Источник

DOMPDF – экспорт данных из PHP в PDF

С помощью библиотеки DOMPDF можно создавать PDF файлы из HTML кода. Нужно только сверстать некий HTML шаблон и передать его DOMPDF и уже на выходе получить сгенерированный PDF файл. Но не надо забывать и то, что эта библиотека не движок для обработки веб-страниц, а значит и шаблоны должны быть сверстаны с использованием самых базовых средств: HTML тегов и CSS стилей. Хотя разработчики заявляют, что их библиотека поддерживает стандарты CSS 2.1 и даже некоторые свойства CSS 3. С полным их перечнем можно ознакомиться здесь. Есть, кстати, один минус – она является довольно “прожорливой” к оперативной памяти. Поэтому возможно придется задуматься об аренде виртуального выделенного сервера. Но это зависит от содержания и объема планируемых PDF документов. С другой стороны она вам может помочь сэкономить много времени на разработку различных отчетов в формате PDF.
Читая различную документацию по DOMPDF, а ее немного и то в основном больше информации в виде ответов на заданные вопросы. Я заметил, что ее используют для более тривиальных задач. Ну, к примеру, ответа на вопрос: как задать номер стартовой страницы для документа? Мной получено не было.
Сейчас я вам хочу рассказать о тех “подводных камнях”, с которыми мне пришлось столкнуться. И поверьте, я потерял много времени. Потерял бы еще больше, если бы мне не дал пару советов один добрый человек. Уже имевший опыт по работе с данной библиотекой.
Представляю перечень проблем, с которыми мне пришлось столкнуться:

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

Саму библиотеку берем вот здесь. Я, к сожалению, не могу сказать (как обычно говорят в таких случаях), что необходимо скачать самую новую версию. Далее я объясню почему. Но я все-таки надеюсь, что со временем существующие в последней версии баги будут устранены. После получения архива с библиотекой, распакуйте его в нужную вам на сервере директорию.
В корневом каталоге библиотеки DOMPDF находиться файл конфигурации – dompdf_config.inc.php. В нем присутствуют базовые настройки библиотеки. Нас здесь интересуют следующие три:

Установка шрифтов

Изначально в библиотеке присутствует набор базовых шрифтов, однако среди них нет тех, которые поддерживали бы кириллицу. Поэтому если нужны кириллические шрифты или есть необходимость в расширении имеющегося множества уже готовых шрифтов, то придется заняться их установкой. И в этом нет ничего сложного. Устанавливать можно шрифты как TrueType (*.ttf) так и OpenType (*.otf). Для работы нам понадобится PHP скрипт load_font.php, который располагается в корне каталога библиотеки DOMPDF. Запуск данного скрипта необходимо производить из командной строки и на вход он принимает следующие параметры:

Для демонстрации произведем установку шрифта “roboto”. Предположим что каталог со шрифтом “roboto” и его стилями находится в директории “D:\font”. Соответственно если нам нужен только шрифт со стилем “normal”, то необходимо запустить скрипт со следующими параметрами:

Но если требуется установить шрифт “roboto” со всеми четырьмя его стилями (normal, bold, italic и bold-italic), то вызов скрипта уже будет иметь другой вид:

Обратите внимание на порядок передачи параметров скрипту для одновременного создания шрифта “roboto” с его четырьмя стилями. Первым передается путь к файлу шрифта со стилем “normal”, затем “bold” и т.д. Этот порядок нарушать ни в коем случае нельзя.

Создание шаблона для DOMPDF

Шаблон представляет обычную HTML страницу с добавлением некоторых новых свойств CSS, которые необходимы для работы самой библиотеки. Весь исходный код шаблона я здесь приводить не стану, так как в этом нет необходимости. Тем более что к статье прилагаются все необходимые файлы. Кстати в шаблоны можно встраивать код на PHP и JavaScript. В нашем случае в шаблоне будет располагаться шесть меток: метка для устанавливаемого номера страницы , метка с кодом цвета для подвала страницы, метка для текста на первой странице, метка для текста на второй странице и две метки и для вывода информационного текста в подвал. Также будет присутствовать встроенный скрипт на PHP для примитивного рисования и вывода нумерации страниц. Данные, которые могут занимать более одной страницы необходимо заключать в блок. Можно конечно этого не делать, но тогда не будет возможности вставлять разрывы страниц, да и текст может не равномерно заполнять страницу. Для вставки разрыва страницы, следует в стилях этого блока прописать одно из следующих свойств:

Нумерацию можно сделать и другим способом. Создаете CSS стиль:

А затем в необходимое вам в HTML коде место вставить конструкцию:

Но только во втором варианте, нельзя задать номер стартовой страницы. Возможно, нам понадобиться не начинать нумерацию с единицы, а к примеру с двойки и т.д. В таком случае подойдет только использование первого метода.

Примечание: При работе с графикой во встроенных скриптах, значение цвета каждой из RGB составляющих должно находиться в диапазоне 0 — 1. Т.е. каждую составляющую цвета в формате RGB требуется разделить на 255.

Создание модуля для экспорта данных

Осталось самое простое – это сделать экспорт данных. Но есть в библиотеке и еще один небольшой баг. Он заключается в том, что если нам понадобиться сгенерировать несколько файлов, то нужно для каждой итерации создавать экземпляр объекта класса DOMPDF заново, иначе вы получите сообщение об ошибке. Ниже приведен исходный код модуля:

В результате должен получиться PDF файл следующего образца:

Источник

Создание PDF-файлов с помощью PHP

PDF-файлы вполне могут быть лучшим форматом для распространения документов в Интернете. В сегодняшнем учебнике я покажу вам, как вы можете создавать PDF-файлы с помощью PHP. Давай сделаем это!

Начнем

Существует несколько методов, которые вы можете использовать для создания PDF-файлов с помощью PHP. Вы можете использовать библиотеку PDFlib, но это довольно дорого, по крайней мере, для коммерческой работы. Сегодня мы будем работать с библиотекой FPDF, которая бесплатна как для личного, так и для коммерческого использования, и совсем не сложная в работе.

Для начала перейдите на сайт FPDF и нажмите загрузки слева. Под всеми руководствами получите zip-архив версии 1.6 (хотя с момента последнего обновления прошло некоторое время, форумы на сайте все еще довольно активны). Разархивируйте файлы; все, что вам нужно из этой папки, это файл fpdf.php и каталог шрифтов.

hello_world.php

Прежде чем мы начнем добавлять текст к вашему документу, нам нужно сделать две вещи: 1) добавить страницу в pdf и 2) установить шрифт.

Теперь мы готовы добавить текст. Весь текст, который вы пишете в PDF-файле, будет записан в ячейки.

Мы могли бы передать этому методу два параметра, но на данный момент мы их просто оставим. Теперь, когда это произойдет, PDF-файл будет отображаться при посещении страницы. Итак, давайте сделаем это прямо сейчас! Вот что я получаю:

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

Отличная работа! Вы создали свой первый PDF-файл. Вернемся к строке, которая создала текстовую ячейку и внесем изменения:

Если вы перезагрузите страницу сейчас и обнаружите, что ничего не произошло, просто добавьте случайную строку запроса в URL-адрес, чтобы принудительно обновить содержимое.

В скором времени мы создадим небольшой скрипт для создания новых файлов, но давайте посмотрим, как сначала установить несколько дополнительных параметров.

Полный скринкаст

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

SetFillColor / SetTextColor

Вы можете заполнять текстовые ячейки цветом фона; мы увидим, как это сделать в нашем приложении, но сначала вы должны установить цвет заливки. Просто передайте этой функции значения красного, зеленого и синего (от 0 до 255). Вы можете установить цвет текста таким же образом.

Если вы хотите установить все три цвета в одно и то же значение, просто используйте один параметр.

SetLineWidth

При рисовании границы на ячейках нетрудно настроить ширину границы. Просто назовите этот метод, передав число с плавающей точкой; помните, что вы установили единицы измерения, когда вы создали экземпляр FPDF. Когда вы начинаете, границы имеют ширину 0,2 мм.

SetAuthor / SetTitle / SetSubject / SetCreator / SetKeywords

SetMargins / SetTopMargin / SetLeftMargin / SetRightMargin

По умолчанию поля вашей страницы составляют 1 см. Вы можете установить верхнее, левое и правое поля отдельно с их соответствующими функциями или установить их все сразу.

Но как насчет нижней границы? Я рад, что вы спросили, о чем позаботилась другая функция.

SetAutoPageBreak

Эта функция принимает логическое значение, определяя, хотите ли вы, чтобы библиотека добавляла разрыв страницы при необходимости или вы хотите сделать это вручную. Если значение равно true (по умолчанию), вы можете добавить второй параметр, определяющий, как близко вы хотите получить разрыв. По умолчанию это 2 см.

Создание чека

Теперь, когда у нас есть понимание того, как создать PDF-файл, давайте начнем наше небольшое приложение. Мы начнем с создания HTML-формы. Когда пользователь нажимает «Отправить», мы берем значения из формы и используем их для создания квитанции для нашего клиента.

Прежде всего, небольшая оболочка HTML:

index.html

Мы добавим еще один набор полей для продуктов, которые покупает пользователь:

Конечно, наша форма заканчивается кнопкой отправки.

style.css

Как вы можете видеть, мы придаем большинству элементов некоторый минималистский стиль. Вот как выглядит наша форма:

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

Генератор чеков

Сейчас мы снова вернулись к PHP. Прежде всего: подключить библиотеку:

Затем вместо создания экземпляра класса FPDF мы собираемся наследовать его на собственный класс. Это позволит нам сделать некоторые изящные вещи. Смотрите внимательно сейчас:

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

Теперь мы подключаемся к двум специальным функциям: Верхний и нижний колонтитулы.

Эта функция будет вызываться в начале каждой страницы нашего PDF-файла. Сначала мы устанавливаем шрифт, цвет заливки и цвет текста. Затем мы выводим нашу ячейку. Обратите внимание, что мы установили ширину в 0. Это специальное значение; ячейка будет занимать все пространство справа от начальной точки (пока она не встретится с правым краем). Поскольку мы начинаем с левого поля, мы получим ячейку по всей ширине страницы (минус поля).

Теперь для функции нижнего колонтитула:

Затем мы создаем ячейку; опять же, мы используем трюк 0-ширины; мы установили высоту 20pts. Мы устанавливаем текст, придаем ему верхнюю границу и центрируем. Готово!

Мы снова вернемся к нашему классу, но пока давайте начнем создавать квитанцию. Создав экземпляр нашего класса, добавив страницу и установив шрифт, мы можем перейти к делу.

Это не перенесет нас вниз на 100 точек; это устанавливает 100 точек от верхней части страницы. Это не включает поля, поэтому мы на 30 пунктов ниже от нашего заголовка.

Начнем с создания ячейки шириной 100pt и 13pt с текстом «Ordered By». Затем мы удаляем шрифт, чтобы удалить полужирный шрифт. Затем мы создаем другую ячейку и передаем ей имя, которое мы получили от нашей формы. Конечно, в реальном проекте вы будете проверять эти значения перед их использованием.

Двигаясь дальше, мы добавим дату покупки:

Опять же, мы устанавливаем шрифт жирным шрифтом; после записи «Дата» мы удаляем полужирный шрифт и печатаем текущую дату, используя функцию date PHP. Указанный формат даст нам название месяца, число дней, за которым следует запятая, и четырехзначный год. Мы помещаем границу как 0 (по умолчанию), чтобы мы могли перейти к параметру линии. Мы устанавливаем его как 1, что поместит нашу позицию в начало следующей строки; это эквивалент использованию «enter» в текстовом процессоре.

Вот как это выглядит сейчас:

image: adress / date

Теперь давайте распечатаем таблицу продуктов, приобретенных нашим клиентом.

Вот функция. Начнем с установки шрифта, цвета текста, цвета заливки и ширины линии. Затем мы настраиваем ячейки заголовка. Каждая из них имеет границу слева, сверху и справа, текст по центру и заполнение.

Возвращаясь к тексту нашего PDF-документа, мы теперь пропустим 50 точек.

Текст не слишком важен, но слишком длинный для одной линии; плюс, в нем есть несколько разрывов строк. Хотя мы не используем их здесь, MultiCell также принимает параметры границ, выравнивания и заполнения.

Метод Write принимает только три параметра: высоту, текст и необязательную ссылку. Нет параметра ширины, потому что он перейдет на правый край, прежде чем будет разрыв линии. Хотя это не лучшее его использование, мы будем использовать его для добавления ссылки:

Обратите внимание, что перед записью мы устанавливаем цвет шрифта и текста, чтобы он выглядел как ссылка.

На этом с PHP все. Давайте добавим еще одну функцию: мы отправим нашу форму с помощью Ajax. Перед тем, как вернуться к index.html, внесите эти изменения для вызова Output :

Вернемся в HTML, давайте импортируем jQuery и добавим наш обработчик клика в кнопку отправки:

Когда кнопка нажата, мы отправим форму. При успешном возврате мы прячем второй div, очищаем его содержимое и перезагружаем его с помощью функции HTML. У этого нового HTML есть ссылка для получения чека. Затем мы снова отображаем div. Не забудьте вернуть false, чтобы форма не отправлялась сама.

Вот что мы получаем

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

И вот наш готовый PDF.

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файлphp создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

И это все, ребята! Используйте комментарии для замечаний или предложений!

Источник

Как сгенерировать pdf-файл: Битрикс, php и TCPDF

25 июня 2020 15:45:37 Частенько клиенты подкидывают нам новые интересные задачки. Вот намедни бизнес-школа обратилась с просьбой сделать им на сайте конструктор, который по заданным параметрам формирует пользователю pdf-файл со списком курсов. Рассказываю, как это было.

Создать конструктор курсов и тренингов для сайта на CMS 1С-Битрикс. В конструкторе: выбор временного промежутка, интересующих рубрик и города проведения. Пользователь выбирает параметры, на их основе формируется pdf-файл со списком всех семинаров и курсов, которые проводятся в эти даты. Курсы разбиты по городам и направлениям. Из файла можно перейти напрямую к описанию курса и сделать заказ на сайте.

Вот, что получилось https://www.itctraining.ru/raspisanie/
Теперь поговорим непосредственно о технической стороне вопроса.

План работы.

Я наметила себе, какие конкретно шаги должны быть проработаны для реализации поставленной задачи.

1. Создание непосредственно формы конструктора.
2. Передача полученных данных при помощи ajax в файл обработки.
3. Выборка из всех элементов на сайте только тех, которые отвечают заданным условиям (дата, рубрики, город проведения).
4. Генерация PDF-файла в стиле сайта и его отображение пользователю.

Создаем шапку и футер pdf файла.

Требовалось, чтобы сгенерированный pdf файл выглядел как на фирменном бланке. Соответственно, нужны шапка с логотипом и контактами. И футер с дополнительной информацией.

Этот простой код сделал файл аккуратным и удобным для чтения.

Проблема №2. Как открыть сгенерированный библиотекой TCPDF файл в новом окне после выполнения ajax запроса.

Заглянем в документацию. TCPDF поддерживает несколько вариантов формирования файла.

Таким образом, TCPDF сохраняет файл на сервере и отдает его пользователю. А delete.php содержит скрипт, который удаляет файл. И место экономится, и пользователь доволен!

Вот так удалось справиться с поставленной задачей. Хотите такой же конструктор? Или может быть лучше? Вы знаете, кому звонить)

php создать pdf файл. Смотреть фото php создать pdf файл. Смотреть картинку php создать pdf файл. Картинка про php создать pdf файл. Фото php создать pdf файл

План работы.

Я наметила себе, какие конкретно шаги должны быть проработаны для реализации поставленной задачи.

1. Создание непосредственно формы конструктора.
2. Передача полученных данных при помощи ajax в файл обработки.
3. Выборка из всех элементов на сайте только тех, которые отвечают заданным условиям (дата, рубрики, город проведения).
4. Генерация PDF-файла в стиле сайта и его отображение пользователю.

Создаем шапку и футер pdf файла.

Требовалось, чтобы сгенерированный pdf файл выглядел как на фирменном бланке. Соответственно, нужны шапка с логотипом и контактами. И футер с дополнительной информацией.

Этот простой код сделал файл аккуратным и удобным для чтения.

Проблема №2. Как открыть сгенерированный библиотекой TCPDF файл в новом окне после выполнения ajax запроса.

Заглянем в документацию. TCPDF поддерживает несколько вариантов формирования файла.

Таким образом, TCPDF сохраняет файл на сервере и отдает его пользователю. А delete.php содержит скрипт, который удаляет файл. И место экономится, и пользователь доволен!

Вот так удалось справиться с поставленной задачей. Хотите такой же конструктор? Или может быть лучше? Вы знаете, кому звонить)

Источник

Топ 5: Лучшие библиотеки генерации PDF с открытым исходным кодом для PHP

Автоматическое создание файлов PDF является одним из наиболее важных моментов проекта (коммерческий или нет). Вероятно, сгенерированные PDF-файлы предназначены не для вас или вашей команды, а для ваших требовательных клиентов, вам необходимо предоставить решение, отвечающее всем ожиданиям и требованиям.

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

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

Эта вершина основана на различных аспектах, таких как простота их реализации, варианты использования, пользователи библиотеки, функции и состояние разработки.

5. FPDF

FPDF — это PHP-класс, который позволяет генерировать PDF-файлы на чистом PHP, то есть без использования библиотеки PDFlib. F от FPDF означает бесплатно: вы можете использовать его для любого вида использования и изменять его в соответствии со своими потребностями.

У FPDF есть и другие преимущества: функции высокого уровня, основными его функциями являются:

FPDF не требует расширения (кроме Zlib для включения сжатия и GD для поддержки GIF). Последняя версия требует как минимум PHP 5.1.

В следующем фрагменте показан базовый PDF-файл, созданный с помощью FPDF:

4. МПДФ

Перед тем, как начать его использовать, мы рекомендуем вам прочитать документацию по адресу https://mpdf.github.io/.

В следующем фрагменте показан базовый файл PDF после установки композитора с помощью mPDF:

3. DOMPDF

Dompdf — это (в основном) совместимый с CSS 2.1 макет HTML и движок рендеринга, написанный на PHP. Это средство визуализации, основанное на стилях: оно будет загружать и читать внешние таблицы стилей, встроенные теги стилей и атрибуты стиля отдельных элементов HTML. Он также поддерживает большинство презентационных атрибутов HTML.

Характеристики

Требования

рекомендации

В следующем фрагменте показано, как создать простой PDF-файл и создать прямую загрузку с помощью Dompdf:

2. Снаппи (wkhtmltopdf)

Snappy — это библиотека PHP5, позволяющая создавать эскизы, снимки или PDF-файлы с URL-адреса или HTML-страницы. Он использует превосходные wkhtmltopdf и wkhtmltoimage на основе webkit, доступные для OSX, Linux, Windows. Вам нужно будет скачать wkhtmltopdf 0.12.x, чтобы использовать Snappy..

wkhtmltopdf и wkhtmltoimage — это инструменты командной строки с открытым исходным кодом (LGPLv3) для рендеринга HTML в PDF и различные форматы изображений с использованием механизма визуализации Qt WebKit. Они работают полностью «без головы» и не требуют отображения или обслуживания дисплея.

Вы даже можете загрузить дистрибутив wkhtmltopdf как зависимость от композитора и динамически ссылаться на двоичный файл в своем проекте.

В следующем фрагменте показан базовый PDF-файл из HTML с использованием wkhtmltopdf в Windows с домашней страницей Github:

1. TCPDF

TCPDF — это библиотека PHP для простого и быстрого создания PDF-документов. Он поддерживает настройку и множество ключевых функций при работе с созданием файлов PDF.

Эта библиотека поддерживает шрифты Unicode и активно поддерживается Никола Асуни в хранилище Github.

Следующий пример, как отобразить HTML как PDF с TCPDF:

TCPDF в первую очередь, почему? Теоретически, первое место должно занимать wkhtmltopdf, так как он использует webkit для визуализации вашего HTML и, вероятно, будет более полезным для визуализации таких вещей, как canvas, SVG и т. Д. Однако вы должны знать, что не каждый разработчик может включить двоичные файлы (приложение или исполняемые файлы) на своих проектах или наслаждайтесь привилегиями делать с сервером все, что он хочет, именно тогда TCPDF становится первым вариантом для большинства разработчиков.

TCPDF стоит на первом месте, так как он наиболее прост в использовании библиотеки PHP для создания PDF-файлов и, тем не менее, является наиболее полным и обширным, поскольку не требует исполняемых файлов, поскольку все работает с простым PHP. Он охватывает основные требования всех проектов, для которых требуется функция создания PDF.

Если вам известна еще одна замечательная PHP-библиотека для создания PDF, поделитесь ею с сообществом в поле для комментариев внизу, получайте удовольствие!

Источник

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *