Създаване на Dynamic PDF файл с помощта на HTML и PHP
Понякога възниква нужда за преобразуване на съдържание от един файлов формат в друг. Може да се наложи да обърнете текст в HTML или може да се наложи да конвертирате HTML формат в изображение. Основната причина за необходимостта да конвертирате от един файлов формат в друг е , защото съдържанието трябва да бъде показано най–подходящо. Насочено към електронната поща, принтиране върху хартия или уеб браузър. В текстов формат е най-подходящ за изпращане на имейли, както и за получаване на имейл , тъи като е по–малка вероятноста съдържанието да бъде повредено в сравнение с HTML форматирани имейли.
Сега, ще научем, как да преобразуваме HTML 2 PDF при използването на PHP. Тази статия няма да обясни логиката за това как да конвертирате PDF файл в HTML файл. Това ще бъде отделна тема и тя не е включена в тази статия. Но ние ще използваме някои безплатни с отворен код PHP скриптове, за да постигнем това преобразуване на файла.
FPDF: The PDF Generator
Първата и основната база за този файл преобразуване FPDF. FPDF е чист клас PHP за генериране на PDF файлове в движение. Нека започнем с PDF поколение с един прост Hello world display.
CODE
За да създадете PDF файл, първо трябва да включим fpdf.php файл. След това ние трябва да създадем FPDF обект, като използваме FPDF() конструкция .
С тази конструкция може да се прехвърлят три стойности а именно ориентацията на страницата (портрет или пейзаж), единица мярка, както и размера на страницата (A4, A5, и т. н.). Знае се, че страниците са в А4 и мярката единица е милиметър. Може да са определени с:
CODE
Възможно е да използвате пейзаж (L),или други формати страници, като например Писмо и други мерни единици (pt, cm, in).
След това добавяме PDF документ с AddPage (). Оригиналът е в горния ляв ъгъл и текущата позиция се поставя на 1 см от границата; полетата могат да бъдат променени с функцията SetMargins ().
За да отпечатаме текста трябва първо да изберете шрифт с SetFont (). Нека изберете Arial Bold 16:
CODE
Ние използваме Cell () функция за изходен текст. Cell е правоъгълна, вероятно в рамка, която съдържа някакъв текст. Това е текущата позиция. Ние ще определим неговите размери, неговият текст (центрирано или подравнен), границите трябва да бъдат изготвени и къде текущата позиция, ще се движи след това (в дясно, под или до началото на следващия ред). За да добавим рамката, ще направим това:
$pdf->Cell(40,10,'Hello World !',1);
Накрая, документът е затворен и се изпраща към браузъра с изход (). Бихме могли да го saved в файл с име.
Има много функции в FPDF, но ние не може да обхванем всички тези в тази статия.
За да научите повече за FPDF, моля, влезте в http://www.fpdf.org.
HTML2FPDF: The Converter
HTML2FPDF е PHP, която използва FPDF , за да конвертира HTML файловете в PDF файлове. Тази библиотека се състои от три класа, а именно PDF, HTML2FPDF и FPDF (модифициран FPDF клас). Класът на PDF разширява HTML2FPDF клас, който се простира на класа FPDF.
Сега нека видим, как да конвертирате пробно HTML страница в PDF файл, използвайки HTML2FPDF библиотека. В HTML страница съдържа таблица, която изброява няколко нации със съответните национални знамена. По-долу е кода за конвертиране.
CODE
Първо трябва да включем html2fpdf.php файл, който съдържа класа HTML2FPDF и обектът създаден с помощта на конструктор HTML2FPDF (). След това новата страница се добавя към PDF документ с помощта на функцията AddPage (). Съдържанието в HTML се четат от sample.html файл, използвайки файл функциите. Съдържанието на HTML е написано на PDF формат, като използвате WriteHTML () функцията.
Класът HTML2FPDF ще се работи най-добре с XHTML 1.0. Също така класа не поддържа всички функции, налични с HTML. За да знаете кой поддържа HTML таговете и други функции, моля консултирайте се с http://html2fpdf.sourceforge.net.
Сега, ще научем, как да преобразуваме HTML 2 PDF при използването на PHP. Тази статия няма да обясни логиката за това как да конвертирате PDF файл в HTML файл. Това ще бъде отделна тема и тя не е включена в тази статия. Но ние ще използваме някои безплатни с отворен код PHP скриптове, за да постигнем това преобразуване на файла.
FPDF: The PDF Generator
Първата и основната база за този файл преобразуване FPDF. FPDF е чист клас PHP за генериране на PDF файлове в движение. Нека започнем с PDF поколение с един прост Hello world display.
CODE
| 1 2 3 4 5 6 7 8 9 | <?php require('fpdf.php'); $pdf=new FPDF(); $pdf->AddPage(); $pdf->SetFont('Arial','B',16); $pdf->Cell(40,10,'Hello World!'); $pdf->Output(); ?> |
За да създадете PDF файл, първо трябва да включим fpdf.php файл. След това ние трябва да създадем FPDF обект, като използваме FPDF() конструкция .
С тази конструкция може да се прехвърлят три стойности а именно ориентацията на страницата (портрет или пейзаж), единица мярка, както и размера на страницата (A4, A5, и т. н.). Знае се, че страниците са в А4 и мярката единица е милиметър. Може да са определени с:
CODE
| 1 | $pdf=new FPDF('P','mm','A4'); |
Възможно е да използвате пейзаж (L),или други формати страници, като например Писмо и други мерни единици (pt, cm, in).
След това добавяме PDF документ с AddPage (). Оригиналът е в горния ляв ъгъл и текущата позиция се поставя на 1 см от границата; полетата могат да бъдат променени с функцията SetMargins ().
За да отпечатаме текста трябва първо да изберете шрифт с SetFont (). Нека изберете Arial Bold 16:
CODE
| 1 | $pdf->SetFont('Arial','B',16); |
Ние използваме Cell () функция за изходен текст. Cell е правоъгълна, вероятно в рамка, която съдържа някакъв текст. Това е текущата позиция. Ние ще определим неговите размери, неговият текст (центрирано или подравнен), границите трябва да бъдат изготвени и къде текущата позиция, ще се движи след това (в дясно, под или до началото на следващия ред). За да добавим рамката, ще направим това:
$pdf->Cell(40,10,'Hello World !',1);
Накрая, документът е затворен и се изпраща към браузъра с изход (). Бихме могли да го saved в файл с име.
Има много функции в FPDF, но ние не може да обхванем всички тези в тази статия.
За да научите повече за FPDF, моля, влезте в http://www.fpdf.org.
HTML2FPDF: The Converter
HTML2FPDF е PHP, която използва FPDF , за да конвертира HTML файловете в PDF файлове. Тази библиотека се състои от три класа, а именно PDF, HTML2FPDF и FPDF (модифициран FPDF клас). Класът на PDF разширява HTML2FPDF клас, който се простира на класа FPDF.
Сега нека видим, как да конвертирате пробно HTML страница в PDF файл, използвайки HTML2FPDF библиотека. В HTML страница съдържа таблица, която изброява няколко нации със съответните национални знамена. По-долу е кода за конвертиране.
CODE
| 1 2 3 4 5 6 7 8 9 10 11 | <? require('html2fpdf.php'); $pdf=new HTML2FPDF(); $pdf->AddPage(); $fp = fopen("sample.html","r"); $strContent = fread($fp, filesize("sample.html")); fclose($fp); $pdf->WriteHTML($strContent); $pdf->Output("sample.pdf"); echo "PDF file is generated successfully!"; ?> |
Първо трябва да включем html2fpdf.php файл, който съдържа класа HTML2FPDF и обектът създаден с помощта на конструктор HTML2FPDF (). След това новата страница се добавя към PDF документ с помощта на функцията AddPage (). Съдържанието в HTML се четат от sample.html файл, използвайки файл функциите. Съдържанието на HTML е написано на PDF формат, като използвате WriteHTML () функцията.
Класът HTML2FPDF ще се работи най-добре с XHTML 1.0. Също така класа не поддържа всички функции, налични с HTML. За да знаете кой поддържа HTML таговете и други функции, моля консултирайте се с http://html2fpdf.sourceforge.net.





