[size=20]Использование FPDF[/size]
Либа предназначена для сборки PDF документов и не использует библиотеку PDFLib, то есть вам не надо пересобирать PHP и т.д.
Скачать fpdf.zip
Для того чтобы вам использовать русский язык в своих документах, вам понадобиться пересобрать шрифт с поддержкой русского языка. Да и для того чтобы использовать шрифт, отличный от тех, которые есть в наборе, вам тоже придется собирать шрифт.
Вот вкратце как это:
Качаем утилиту http://ttf2pt1.sourceforge.net/
cmd> ttf2pt1 -a c:\windows\fonts\arial.ttf c:\arial
Получаем два файлика arial.afm и arial.t1a
Теперь ищем в сырцах библиотеки файл /fpdf/font/makefont/makefont.php и используем его
<?php
require('/fpdf/fpdf.php');
require('/fpdf/font/makefont/makefont.php');
MakeFont('c:\\windows\\fonts\\arial.ttf','c:\\arial.afm','cp1251');
?>
и на выходе получаем arial.z и arial.php, перемещаем их в /fpdf/font/
Все, теперь у нас есть шрифт с кириллической кодировкой.
Использование библиотеки:
<?php
require('/fpdf/fpdf.php');
$pdf = new FPDF();
$pdf->AddFont('Arial','','Arial.php');
$pdf->AddPage();
$pdf->SetFont('Arial', '', '35');
$pdf->Cell(40,10,'Пыха');
$pdf->Output();
?>
[size=20]PECL-расширение PDFLib[/size]
Для Windows: http://pecl4win.php.net/ext.php/php_pdflib.dll
Для FreeBSD: cd /usr/ports/cd print/pecl-pdflib/ && make install clean
А дальше в мануал :)
Пример использования:
<?php
// create handle for new PDF document
$pdf = pdf_new();
// open a file
pdf_open_file($pdf, "test.pdf");
// start a new page (A4)
pdf_begin_page($pdf, 595, 842);
// get and use a font object
$fontdir = "C:\WINDOWS\Fonts";
pdf_set_parameter($pdf, "FontOutline", "arialMyName=$fontdir\arial.ttf");
$arial = pdf_findfont($pdf, "arialMyName", "host", 1);
pdf_setfont($pdf, $arial, 10);
// print text
pdf_show_xy($pdf, "There are more things in heaven and earth, Horatio,",50, 750);
pdf_show_xy($pdf, "than are dreamt of in your philosophy", 50,730);
// end page
pdf_end_page($pdf);
// close and save file
pdf_close($pdf);
?>
[size=20]А как редактировать уже существующий PDF документ?[/size]