Web-разработка

FPDF — Урок 1: Простой пример

, , , ,
27 декабря 2009, 12:57

Не так давно я рассказывал и приводил небольшой пример использования — FPDF – библиотека для создания PDF-файлов на PHP. Теперь я хочу попробовать перевести несколько Уроков с официального сайта библиотеки FPDF. Перевод будет вольным, так как я не владею знаниями английского языка. Все Уроки желательно изучать и при этом подглядывать в русский мануал по данной библиотеке.

Начнем с классического примера:

require('Fpdf\fpdf.php');
 
$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();

Для начала включаем библиотеку FPDF, в наш сценарий, после этого создаем объект FPDF. Конструктор FPDF () здесь используется со значениями по умолчанию: страница A4 портрет и единицей измерения являются миллиметры. А можно задать иначе (с явными значениями):

$pdf=new FPDF('P','mm','A4');

Здесь можно использовать ориентацию L(Альбомная), или P(Книжная) — первый параметр.
Второй параметр — единица измерения(pt-точка,mm-миллиметр,cm-сантиметр,in-дюйм), иными словами это те единицы измерения в которых будут отображаться шрифты.
Третий параметр — формат страницы (A3,A4,A5,Letter,Legal, или специальный формат, выраженный в виде массива из двух элементов: ширина и высота выраженных в единицах, заданных в unit).

На данный момент не существует ни одной страницы, поэтому мы должны добавить одну страницу с помощью AddPage (). При добавлении новой страницы Вы будете находится в левом верхнем углу страницы с учетом отступов, которые по умолчанию равны 1см. Поля могут быть изменены с помощью метода SetMargins ().

Прежде чем мы можем напечатать текст, обязательно следует выбрать шрифт с помощью метода SetFont (), в противном случае в документ ничего не будет выведено. Мы выбираем Arial Bold 16:

$pdf->SetFont('Arial','B',16);

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

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

Теперь мы можем выводить ячейки в документ, с помощью метода Cell (). Ячейка представляет собой прямоугольную область, которая содержит строки текста(ячейку можно всячески оформить). Ячейка выводится на текущей позиции. В нашем примере мы указали ее размеры(ширина — первый параметр, высота второй параметр), текст который будет находится в ней. Остальные параметры могут содержать следующие данные: граница ячейки, текущая позиция после вывода ячейки, выравнивание текста и так далее(подробнее см. в мануале). Ну например чтобы добавить рамку, нужно сделать следующее:

$pdf->Cell(40,10,'Hello World !',1);

Чтобы добавить новую ячейку текст которой будет выровнен по центру, и перевести следующий вывод на новую строку, нужно написать следующее:

$pdf->Cell(60,10,'Powered by FPDF.',0,1,'C');

В вышеприведенном коде: ширина — 60, высота — 10, текст — Powered by FPDF., граница ячейки — 0, текущая позиция после вывода ячейки — 1, выравнивание текста в ячейке — C(по центру).

Переход на новую строку можно осуществить с помощью метода Ln (). Этот метод позволяет задать высоту разрыва строки.

Наконец, этот документ закрывается и отправляется в браузер с помощью метода Output (). Мы могли бы сохранить его в файл, передав при этом в метод желаемое имя файла.

Внимание:

В случае, когда PDF отправляется браузеру, ничего не должно выводиться сценарием, ни до, ни после (не HTML, не даже пробел или возврат каретки). Если Вы все таки отправите что-нибудь до того как выведете документ в браузер, то Вы получите сообщение об ошибке. Если вы отправляете что-нибудь после вывода документа, то эти данные не будут отображены браузером.

Результат Урока 1: Простой пример :

FPDF - Урок 1: Простой пример

В следующем уроке мы узнаем больше о библиотеке FPDF и о том как формируется заголовок и подвал, как можно управлять разрывом страниц, вставим изображение, и сделаем нумерацию страниц — FPDF – Урок 2: Заголовок, подвал, разрыв страницы и изображение.

Ссылки:

Не судите строго, это мой один из первых опытов перевода.