|
|
|
สอบถามเรื่อง font ของ fpdf ครับ จะนำ THSarabun มาใช้ครับ |
|
|
|
|
|
|
|
ผมต้องการเอา THSarabun มาใช้กับ fpdf ครับ แต่ผลที่ออกมาดันเป็นแบบในถาพครับCode (PHP)
<?
ob_start();
require_once('config.php');
$monty=array("--เลือก--","มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม");
$sql_slip="SELECT * FROM salary_horizontal WHERE idcard='".$_GET['idcard']."' and year_data='".$_GET['year_data']."' and month_data='".$_GET['month_data']."'";
$query_slip=mysql_query($sql_slip);
$result_slip=mysql_fetch_array($query_slip);
require('fpdf/fpdf.php');
class PDF extends FPDF
{
var $B;
var $I;
var $U;
var $HREF;
function PDF($orientation='L',$unit='mm',$format='A4')
{
//Call parent constructor
$this->FPDF($orientation,$unit,$format);
//Initialization
$this->B=0;
$this->I=0;
$this->U=0;
$this->HREF='';
}
function WriteHTML($html)
{
//HTML parser
$html=str_replace("\n",' ',$html);
$a=preg_split('/<(.*)>/U',$html,-1,PREG_SPLIT_DELIM_CAPTURE);
foreach($a as $i=>$e)
{
if($i%2==0)
{
//Text
if($this->HREF)
$this->PutLink($this->HREF,$e);
else
$this->Write(5,$e);
}
else
{
//Tag
if($e{0}=='/')
$this->CloseTag(strtoupper(substr($e,1)));
else
{
//Extract attributes
$a2=explode(' ',$e);
$tag=strtoupper(array_shift($a2));
$attr=array();
foreach($a2 as $v)
{
if(preg_match('/([^=]*)=["\']?([^"\']*)/',$v,$a3))
$attr[strtoupper($a3[1])]=$a3[2];
}
$this->OpenTag($tag,$attr);
}
}
}
}
function OpenTag($tag,$attr)
{
//Opening tag
if($tag=='B' or $tag=='I' or $tag=='U')
$this->SetStyle($tag,true);
if($tag=='A')
$this->HREF=$attr['HREF'];
if($tag=='BR')
$this->Ln(5);
}
function CloseTag($tag)
{
//Closing tag
if($tag=='B' or $tag=='I' or $tag=='U')
$this->SetStyle($tag,false);
if($tag=='A')
$this->HREF='';
}
function SetStyle($tag,$enable)
{
//Modify style and select corresponding font
$this->$tag+=($enable ? 1 : -1);
$style='';
foreach(array('B','I','U') as $s)
if($this->$s>0)
$style.=$s;
$this->SetFont('',$style);
}
function PutLink($URL,$txt)
{
//Put a hyperlink
$this->SetTextColor(0,0,255);
$this->SetStyle('U',true);
$this->Write(5,$txt,$URL);
$this->SetStyle('U',false);
$this->SetTextColor(0);
}
}
?>
<table width="1008" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3" align="center" class="tb_n"><strong>ใบรับรองการจ่ายเงินเดือนและเงินอื่น ประจำเดือน
<?=$monty[$result_slip["month_data"]]?>
ปี พ.ศ.
<?=$result_slip["year_data"];?>
</strong></td>
</tr>
<tr>
<td width="32%" class="tb_n"><strong>ชื่อ-นามสกุล</strong> <span style="font-size:12.0pt;font-family:
"TH SarabunPSK","sans-serif";color:black">
<?=$result_slip['fname']?>
<?=$result_slip['lname']?>
</span></td>
<td width="36%" class="tb_n"><strong>กรม</strong> <span style="font-size:12.0pt;font-family:"TH SarabunPSK","sans-serif";
color:black">
<?=$result_slip['gov_part']?>
</span></td>
<td width="32%" class="tb_n"><strong>สำนัก/กอง/ศูนย์</strong> <span style="font-size:12.0pt;font-family:"TH SarabunPSK","sans-serif";
color:black">
<?=$result_slip['gov_name']?>
</span></td>
</tr>
<tr>
<td class="tb_n"><strong>โอนเงินเข้า </strong><?=$result_slip['bank_name']?></td>
<td class="tb_n"><strong>เลขที่บัญชี </strong><?=$result_slip['bank_book_bank_no']?></td>
<td class="tb_n"> </td>
</tr>
<tr>
<td class="tb_n"><strong>รายการายรับ</strong></td>
<td> </td>
<td> </td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td class="tb_n"><strong>รายการายจ่าย</strong></td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
</table>
<?
$html=ob_get_contents();
$pdf=new PDF();
$pdf->AddPage();
$pdf->SetLink($link);
//$pdf->Image('logo.png',10,12,30,0,'','https://www.thaicreate.com');
$pdf->AddFont('THSarabun','','THSarabun.php');
$pdf->SetLeftMargin(45);
$pdf->SetFontSize(14);
$pdf->WriteHTML($html);
$pdf->Output("MyPDF/MyPDF.pdf");
?>
<a href="MyPDF/MyPDF.pdf">LINK </a>
ภาพครับ
Tag : PHP, HTML/CSS
|
|
|
|
|
|
Date :
2014-11-07 12:34:21 |
By :
mintlufy |
View :
1309 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ้อ ผมลืม $pdf->SetFont('THSarabun'); ครับ แต่ผลที่ออกมาเป็นแบบนี้ครับ
|
|
|
|
|
Date :
2014-11-07 12:40:00 |
By :
mintlufy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอนอกเรื่องหน่อยนะครับ ใครเป็นคนแนะนำให้ใช้ fpdf ครับ มันหยุดพัฒนาไปนานแล้วครับถ้าเป็น อาจารย์แนะนำมา ไปบอกอาจารย์ด้วยนะครับ
ส่วนตัวแนะนำ mpdf ครับ เพราะ tcpdf ก็น่าจะเก่าแล้ว
|
|
|
|
|
Date :
2014-11-07 13:45:21 |
By :
gaowteen |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณอา google ครับ
ตอนนี้กำลังทดลอง mPDF ครับ แต่ติดเรื่อง font กับตารางที่ใช้ css เขียนครับ
Code (PHP)
<?
ob_start();
require_once('config.php');
require_once('mpdf/mpdf.php');
?>
<?
$html=ob_get_contents();
ob_end_clean();
$pdf = new mPDF('th', 'A4-L', '0', 'THSaraban');
$pdf->SetAutoFont();
$pdf->SetFontSize(13);
$pdf->SetDisplayMode('fullpage');
$pdf->WriteHTML($html,2);
$pdf->Output();
?>
ผลครับ
|
|
|
|
|
Date :
2014-11-07 14:12:35 |
By :
mintlufy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|