Создаем документ PDF из PHP скрипта с помощью библиотеки FPDF. Функции PDF Создаем колонтитул страницы и вводный текст

Функции PDF Введение

Функции PDF в PHP могут создавать PDF-файлы с использованием библиотеки PDFlib, автор Thomas Merz .

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

В библиотеке PDFlib и в модуле PHP все функции и параметры имеют идентичные имена. Вам необходимо разобраться в некоторых основных понятиях PDF и PostScript, чтобы эффективно использовать это расширение.
Все размеры и координаты измеряются в пунктах PostScript. Обычно имеется 72 PostScript-пункта на дюйм, но это зависит от разрешающей способности на выводе. См. в PDFlib-документации, включённой в дистрибутив PDFlib, объяснение используемой системы координат.

Обратите внимание, что большинство функций PDF требуют pdf object в качестве первого параметра. См. примеры далее.

Примечание: Имеется альтернативный модуль PHP для создания PDF-документов на базе FastIO"s ClibPDF. См. раздел ClibPDF . Обратите внимание, что ClibPDF имеет несколько иной API по сравнению с PDFlib.

Требования

PDFlib доступна для скачивания на http://www.pdflib.com/products/pdflib/index.html , но требует платной лицензии на коммерческое использование. Библиотеки JPEG и TIFF требуются при компиляции данного расширения.

Для использования данных функций в PHP

Когда вы используете версию 3.x PDFlib, вы должны сконфигурировать PDFlib с опцией --enable-shared-pdflib .

В PHP 4.3.9, Вы должны установить это расширение через PEAR , используя следующую команду: pear install pdflib .

Конфликты со старыми версиями PDFlib

Начиная с PHP 4.0.5, PHP-расширение для PDFlib официально поддерживается компанией PDFlib GmbH. Это означает, что все функции, описанные в учебнике PDFlib (V3.00 или выше), поддерживаются в PHP 4 с точно теми же значениями и параметрами. Только return-значения могут отличаться от учебника PDFlib, так как используется соглашение PHP по возвращению FALSE . Из соображений совместимости эта привязка к PDFlib всё ещё поддерживает старые функции, но они должны быть заменены их новыми версиями. PDFlib GmbH не будет рассматривать проблемы, возникающие при использовании этих старых функций.

Старая функция Замена
pdf_put_image() Больше не нужна.
pdf_execute_image() Больше не нужна.
pdf_get_annotation() pdf_get_bookmark() с использованием тех же параметров.
pdf_get_font() pdf_get_value() с передачей "font" в качестве второго параметра.
pdf_get_fontsize() pdf_get_value() с передачей "fontsize" в качестве второго параметра.
pdf_get_fontname() pdf_get_parameter() с передачей "fontname" в качестве второго параметра.
pdf_set_info_creator() pdf_set_info() с передачей "Creator" в качестве второго параметра.
pdf_set_info_title() pdf_set_info() с передачей "Title" в качестве второго параметра.
pdf_set_info_subject() pdf_set_info() с передачей "Subject" в качестве второго параметра.
pdf_set_info_author() pdf_set_info() с передачей "Author" в качестве второго параметра.
pdf_set_info_keywords() pdf_set_info() с передачей "Keywords" в качестве второго параметра.
pdf_set_leading() pdf_set_value() с передачей "leading" в качестве второго параметра.
pdf_set_text_rendering() pdf_set_value() с передачей "textrendering" в качестве второго параметра.
pdf_set_text_rise() pdf_set_value() с передачей "textrise" в качестве второго параметра.
pdf_set_horiz_scaling() pdf_set_value() с передачей "horizscaling" в качестве второго параметра.
pdf_set_text_matrix() Больше не доступна.
pdf_set_char_spacing() pdf_set_value() с передачей "charspacing" в качестве второго параметра.
pdf_set_word_spacing() pdf_set_value() с передачей "wordspacing" в качестве второго параметра.
pdf_set_transition() pdf_set_parameter() с передачей "transition" в качестве второго параметра.
pdf_open() pdf_new() плюс последующий вызов pdf_open_file()
pdf_set_font() pdf_findfont() плюс последующий вызов pdf_setfont()
pdf_set_duration() pdf_set_value() с передачей "duration" в качестве второго параметра.
pdf_open_gif() pdf_open_image_file() с передачей "gif" в качестве второго параметра.
pdf_open_jpeg() pdf_open_image_file() с передачей "jpeg" в качестве второго параметра.
pdf_open_tiff() pdf_open_image_file() с передачей "tiff" в качестве второго параметра.
pdf_open_png() pdf_open_image_file() с передачей "png" в качестве второго параметра.
pdf_get_image_width() pdf_get_value() с передачей "imagewidth" в качестве второго параметра и изображения в качестве третьего параметра.
pdf_get_image_height() pdf_get_value() с передачей "imageheight" в качестве второго параметра и изображения в качестве третьего параметра.
Подсказки по установке PDFlib 3.x

При использовании версии 3.x библиотеки PDFlib вы должны сконфигурировать PDFlib с опцией
--enable-shared-pdflib .

Вопросы по старым версиям PDFlib

PDFlib 3.0 или выше поддерживается в PHP 3.0.19 и позднее.

Примеры

Большинство функций довольно легко использовать. Самое трудное это, пожалуй, создание очень простого PDF-документа. Следующий пример должен помочь начать. Он создаёт test.pdf из одной страницы. Эта страница содержит текст "Times Roman outlined" шрифтом outlined 30pt. Текст также подчёркнут.

Пример 1. Создание PDF-документа с помощью PDFlib

Скрипт getpdf.php возвращает pdf-документ:

Дистрибутив PDFlib содержит более сложный пример, где создаётся страница с аналоговыми часами. Здесь мы используем возможность PDFlib создания в памяти, чтобы не использовать временные файлы. Этот пример, конвертированный в PHP из примера PDFlib, таков: (Такой же пример имеется в документации CLibPDF .)

Пример 2. pdfclock из дистрибутива PDFlib

Программы и игры
school38vrn.ru - Операционные системы. Ноутбуки. Программы. Компьютер. Обзор технологий. Обслуживание