Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > ต้องการจัด layout แบบนี้ทำอย่างไรมีใครเคยทำ หรือพอจะแนะแนวทางได้บ้างครับ ปริ้นผ่าน MPDF



 

ต้องการจัด layout แบบนี้ทำอย่างไรมีใครเคยทำ หรือพอจะแนะแนวทางได้บ้างครับ ปริ้นผ่าน MPDF

 



Topic : 133017



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์




ภาพ

ต้องการจัดให้เป็นรูปแบบดังภาพนี้ครับ โดยจะแบ่งให้ได้ 6 ช่อง โดยผมจะวนลูปข้อมูลออกมาและต้องการให้เรียงกันตามแบบในภาพครับ มีใครเคยจัดแบบนี้ไหมครับ หรือพอจะแนะแนวทางได้บ้างครับ



Tag : PHP, HTML







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2019-01-29 15:39:47 By : simson_palo View : 1249 Reply : 5
 

 

No. 1



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


ผมใช้ MPDF ในการจัดเอกสารออกมาครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-01-29 15:40:43 By : simson_palo
 


 

No. 2



โพสกระทู้ ( 288 )
บทความ ( 0 )



สถานะออฟไลน์


MPDF ตรงช่วง HTML Conent ให้ใช้

Code (PHP)
$dataHTML = '';
for($i=0;$i<5;$i++) { 
  $dataHTML .= ' CODE FORM 1 ช่อง';
}
$mpdf->WriteHTML($dataHTML);


ประมาณนี้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-01-30 08:16:35 By : ilikeit
 

 

No. 3



โพสกระทู้ ( 1,095 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


จัดรูปแบบใน word แล้ว save เป็น pdf

แล้วใช้ตัว fpdi+fpdf
https://www.setasign.com/products/fpdi/demos/
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-01-30 15:19:14 By : Pong Thep
 


 

No. 4



โพสกระทู้ ( 30 )
บทความ ( 0 )



สถานะออฟไลน์


Code (PHP)
foreach ($result as $r) {
        if ($r->subject == 'Annual') {
           $sbj = 'การประชุมผู้ถือหุ้นสามัญ';
        }elseif ($r->subject == 'Extraordinary') {
           $sbj = 'การประชุมผู้ถือหุ้นวิสามัญ';
        }else{ $sbj = $r->subject;}
      //  if($i%2==0){ 
         $html = '<div style="$i%2float: left;  width: 50%;font-size: 8px; margin-top:10pt;margin-bottom: 10pt; ">';
     // }else{
      //   $html = '<div style="float: right;  width: 50%;font-size: 8px; margin-top:10pt;margin-bottom: 10pt; ">';
      //  }
         $html .= '<div stlye="float:right;"><label >เลขประจำตัว :'.$r->id_no.'</label></div>';
         $html .='<h5 style="text-align: center;">บัตรลงคะแนน</h5>';
         $html .='<h5 style="text-align: center;">'.$sbj.'ประจำปี'.$r->year.'</h5>';
         $html .='<h5 style="text-align: center;"></h5>';
         $html .='<h5 style="text-align: center;">วันที่'.$r->date.'</h5>';
         $html .='<h5 style="text-align: center;">ณ '.$r->place.'</h5>';
         $html .= '<label >ชื่อผู้ถือหุ้น : '.$r->name.'</label><br>';
         $html .= '<label>จำนวนหุ้น : </label>'.number_format($r->s_holder,2).' หุ้น<br>';
         $html .= '<label>วาระที่ :'.$r->no_ag.' '.$r->agenda.' </label><br>';
         if($r->detail_ag !=''){
         $html .= '<label>วาระที่ :'.$r->no_sub_ag.' '.$r->detail_ag.' </label><br>';
         }
         $html .='<div style="margin-left:90px;">';
         if($r->condition =='none'){
          $html .= '<input type="checkbox" >ไม่มีการลงมติในวาระนี้<br>';
         }else{
         $html .= '<input type="checkbox" >อนุมัติ/รับรอง<br>';
         $html .= '<input type="checkbox" >ไม่อนุมัติ/ไม่รับรอง<br>';
         $html .= '<input type="checkbox" >งดออกเสียง';
         }
         $html .= '</div>';
         $html .= '<div style="margin-left:140px;"><label >ลงลายมือชื่อ : …………………………………… : </label></div><br>';
         $html .= '</div>';


        $this->mpdf->debug = true;
       //  echo $html;
        
      //   $pdf->Add_Label($text);
         $this->mpdf->WriteHTML($html);
      //   $i++;
       }

        $this->mpdf->Output();


ตอนนี้ผมใช้แบบนี้อยู่ครับ พอ echo ดูในเป็น html มันได้ แต่พอ output ออกมาเป็น pdf แล้วมันชิดซ้ายหมดเลยครับ


ประวัติการแก้ไข
2019-01-30 22:43:49
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-01-30 22:43:26 By : simson_palo
 


 

No. 5



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอนหลังผมไปถูกใจ tcpdf ในโหมดของ EOD
หลักการคือใส่ทุกอย่าง ตั้งแต่ html css php ให้อยู่ใน EOD
เวลามัน gen เป็น pdf มันตอบโจทย์มากจริง ๆ

ตย.อาจจะยาวหน่อย อันนี้เขียนใน CI
เสียดายตัวงานจริง HDD server พังเลย พังพินาศ ฐานข้อมูลเกลี้ยง T^T
 $this->load->library('Tcpdfx');

class MYPDF extends TCPDF {

    public $datafromdb;//<-- to save your data

    function __construct( $datafromdb , $orientation, $unit, $format )
    {
        parent::__construct( $orientation, $unit, $format, true, 'UTF-8', false);
        // echo $datafromdb;
        // print_r($datafromdb);
        // echo "<hr>";
        $this->datafromdb = $datafromdb->teacherName;
        //...
    }

    public function Header() {
        // print_r($datafromdb);

        // $image_file = 'http://council.buu.ac.th/image/LogoBuuThai.jpg';
        $image_file = K_PATH_IMAGES.'buu.png';
        $this->Image($image_file, 'C', 5, 25, '', 'PNG', false, 'C', false, 300, 'C', false, false, 0, false, false, false);
        $this->SetFont('thsarabun', 'B', 18);
        $this->Ln(33);
        $this->Cell(0, 10, 'รายชื่อนิสิตที่ '.$this->datafromdb.' เป็นอาจารย์ที่ปรึกษาหลักควบคุมวิทยานิพันธ์', 0, false, 'C', 0, '', 0, false, 'M', 'M');
    }
}


$pdf = new MYPDF($get_teacher_name,PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true,
 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
// $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetMargins(15, 45, 10, true);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->SetFont('thsarabun', '', 14, '', true);
$pdf->AddPage('L', 'A4');

$tbl = <<<EOD
<style>
td{
        border:1px solid #CCC;
}
</style>
                    <table cellspacing="0" cellpadding="1" border="0" style="width:950px;">
                        <thead>
                          <tr>
                            <td align="center" bgcolor="#F2F2F2" width="30">#</td>
                            <td align="center" bgcolor="#F2F2F2" width="180">ชื่อ-นามสกุล</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาไทย</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาอังกฤษ</td>
                          </tr>
                        </thead>
                        <tbody>
EOD;

foreach ($get_store as $key => $value) {
  $num = $key+1;
  $name = $value->arrTitle[0]->titleName.$value->arrNisitName[0]->nisitName;
  if (empty($value->arrThesisName)) {
    $thai = '-';
    $eng = '-';
  }else{
    $thai = $value->arrThesisName[0]->thesisNameThai;
    $eng = $value->arrThesisName[0]->thesisNameEng;
  }

$tbl .= <<<EOD
<tr>
    <td align="center" width="30">$num</td>
    <td align="left" width="180">&nbsp;$name</td>
    <td align="left" width="370">&nbsp;$thai</td>
    <td align="left" width="370">&nbsp;$eng</td>
</tr>
EOD;

if($num==6){
$tbl .= <<<EOD
</tbody></table>
EOD;

$pdf->writeHTML($tbl, true, false, false, false, '');
$pdf->lastPage();
$pdf->AddPage('L', 'A4');

$tbl = <<<EOD
<style>
td{
        border:1px solid #CCC;
}
</style>
EOD;

$tbl .= <<<EOD
                    <table cellspacing="0" cellpadding="1" border="1" style="width:950px;">
                        <thead>
                          <tr>
                            <td align="center" bgcolor="#F2F2F2" width="30">#</td>
                            <td align="center" bgcolor="#F2F2F2" width="180">ชื่อ-นามสกุล</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาไทย</td>
                            <td align="center" bgcolor="#F2F2F2" width="370">ภาษาอังกฤษ</td>
                          </tr>
                        </thead>
                        <tbody>
EOD;

}

// 

}

$tbl .= <<<EOD
</tbody></table>
EOD;


$pdf->writeHTML($tbl, true, false, false, false, '');

  $pdf->Output('example_001.pdf', 'I');

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-01-31 08:25:42 By : apisitp
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ต้องการจัด layout แบบนี้ทำอย่างไรมีใครเคยทำ หรือพอจะแนะแนวทางได้บ้างครับ ปริ้นผ่าน MPDF
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่