2009-09-30 09:18:36 +00:00
< ? php
//============================================================+
// File name : example_018.php
// Begin : 2008-03-06
2013-05-14 20:28:42 +00:00
// Last Update : 2013-05-14
2010-05-21 16:47:01 +00:00
//
2009-09-30 09:18:36 +00:00
// Description : Example 018 for TCPDF class
// RTL document with Persian language
2010-05-21 16:47:01 +00:00
//
2009-09-30 09:18:36 +00:00
// Author: Nicola Asuni
2010-05-21 16:47:01 +00:00
//
2009-09-30 09:18:36 +00:00
// (c) Copyright:
// Nicola Asuni
2011-12-23 17:19:43 +00:00
// Tecnick.com LTD
2009-09-30 09:18:36 +00:00
// www.tecnick.com
// info@tecnick.com
//============================================================+
/**
* Creates an example PDF TEST document using TCPDF
* @ package com . tecnick . tcpdf
* @ abstract TCPDF - Example : RTL document with Persian language
* @ author Nicola Asuni
* @ since 2008 - 03 - 06
*/
2013-05-14 20:28:42 +00:00
// Include the main TCPDF library (search for installation path).
require_once ( 'tcpdf_include.php' );
2009-09-30 09:18:36 +00:00
// create new PDF document
2010-05-21 16:47:01 +00:00
$pdf = new TCPDF ( PDF_PAGE_ORIENTATION , PDF_UNIT , PDF_PAGE_FORMAT , true , 'UTF-8' , false );
2009-09-30 09:18:36 +00:00
// set document information
$pdf -> SetCreator ( PDF_CREATOR );
$pdf -> SetAuthor ( 'Nicola Asuni' );
$pdf -> SetTitle ( 'TCPDF Example 018' );
$pdf -> SetSubject ( 'TCPDF Tutorial' );
$pdf -> SetKeywords ( 'TCPDF, PDF, example, test, guide' );
// set default header data
2010-05-21 16:47:01 +00:00
$pdf -> SetHeaderData ( PDF_HEADER_LOGO , PDF_HEADER_LOGO_WIDTH , PDF_HEADER_TITLE . ' 018' , PDF_HEADER_STRING );
2009-09-30 09:18:36 +00:00
// set header and footer fonts
$pdf -> setHeaderFont ( Array ( PDF_FONT_NAME_MAIN , '' , PDF_FONT_SIZE_MAIN ));
$pdf -> setFooterFont ( Array ( PDF_FONT_NAME_DATA , '' , PDF_FONT_SIZE_DATA ));
2009-03-24 18:37:18 +00:00
// set default monospaced font
$pdf -> SetDefaultMonospacedFont ( PDF_FONT_MONOSPACED );
2009-09-30 09:18:36 +00:00
2013-05-14 20:28:42 +00:00
// set margins
2009-09-30 09:18:36 +00:00
$pdf -> SetMargins ( PDF_MARGIN_LEFT , PDF_MARGIN_TOP , PDF_MARGIN_RIGHT );
$pdf -> SetHeaderMargin ( PDF_MARGIN_HEADER );
$pdf -> SetFooterMargin ( PDF_MARGIN_FOOTER );
2013-05-14 20:28:42 +00:00
// set auto page breaks
2009-09-30 09:18:36 +00:00
$pdf -> SetAutoPageBreak ( TRUE , PDF_MARGIN_BOTTOM );
2013-05-14 20:28:42 +00:00
// set image scale factor
2010-05-21 16:47:01 +00:00
$pdf -> setImageScale ( PDF_IMAGE_SCALE_RATIO );
2009-09-30 09:18:36 +00:00
// set some language dependent data:
$lg = Array ();
$lg [ 'a_meta_charset' ] = 'UTF-8' ;
$lg [ 'a_meta_dir' ] = 'rtl' ;
$lg [ 'a_meta_language' ] = 'fa' ;
$lg [ 'w_page' ] = 'page' ;
2013-05-14 20:28:42 +00:00
// set some language-dependent strings (optional)
2010-05-21 16:47:01 +00:00
$pdf -> setLanguageArray ( $lg );
2009-09-30 09:18:36 +00:00
// ---------------------------------------------------------
// set font
$pdf -> SetFont ( 'dejavusans' , '' , 12 );
// add a page
$pdf -> AddPage ();
// Persian and English content
$htmlpersian = '<span color="#660000">Persian example:</span><br />سلام بالاخره مشکل PDF فارسی به طور کامل حل شد. اینم یک نمونش.<br />مشکل حرف \"ژ\" در بعضی کلمات مانند کلمه ویژه نیز بر طرف شد.<br />نگارش حروف لام و الف پشت سر هم نیز تصحیح شد.<br />با تشکر از "Asuni Nicola" و محمد علی گل کار برای پشتیبانی زبان فارسی.' ;
$pdf -> WriteHTML ( $htmlpersian , true , 0 , true , 0 );
// set LTR direction for english translation
$pdf -> setRTL ( false );
$pdf -> SetFontSize ( 10 );
2010-05-21 16:47:01 +00:00
// print newline
$pdf -> Ln ();
2009-09-30 09:18:36 +00:00
// Persian and English content
$htmlpersiantranslation = '<span color="#0000ff">Hi, At last Problem of Persian PDF Solved completely. This is a example for it.<br />Problem of "jeh" letter in some word like "ویژه" (=special) fix too.<br />The joining of laa and alf letter fix now.<br />Special thanks to "Nicola Asuni" and "Mohamad Ali Golkar" for Persian support.</span>' ;
$pdf -> WriteHTML ( $htmlpersiantranslation , true , 0 , true , 0 );
// Restore RTL direction
$pdf -> setRTL ( true );
2011-10-02 07:56:50 +00:00
// set font
$pdf -> SetFont ( 'aefurat' , '' , 18 );
2009-09-30 09:18:36 +00:00
2010-05-21 16:47:01 +00:00
// print newline
$pdf -> Ln ();
2009-09-30 09:18:36 +00:00
// Arabic and English content
$pdf -> Cell ( 0 , 12 , 'بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ' , 0 , 1 , 'C' );
$htmlcontent = 'تمَّ بِحمد الله حلّ مشكلة الكتابة باللغة العربية في ملفات الـ<span color="#FF0000">PDF</span> مع دعم الكتابة <span color="#0000FF">من اليمين إلى اليسار</span> و<span color="#009900">الحركَات</span> .<br />تم الحل بواسطة <span color="#993399">صالح المطرفي و Asuni Nicola</span> . ' ;
$pdf -> WriteHTML ( $htmlcontent , true , 0 , true , 0 );
// set LTR direction for english translation
$pdf -> setRTL ( false );
2010-05-21 16:47:01 +00:00
// print newline
$pdf -> Ln ();
2011-10-02 07:56:50 +00:00
$pdf -> SetFont ( 'aealarabiya' , '' , 18 );
2009-09-30 09:18:36 +00:00
// Arabic and English content
$htmlcontent2 = '<span color="#0000ff">This is Arabic "العربية" Example With TCPDF.</span>' ;
$pdf -> WriteHTML ( $htmlcontent2 , true , 0 , true , 0 );
// ---------------------------------------------------------
//Close and output PDF document
$pdf -> Output ( 'example_018.pdf' , 'I' );
//============================================================+
2011-10-02 07:56:50 +00:00
// END OF FILE
2009-09-30 09:18:36 +00:00
//============================================================+