TCPDF生成PDF文件方法教程說明

TCPDF生成PDF文件方法教程說明

TCPDF下載:

composer:

在packagist中所搜tcpdf (https://packagist.org/packages/tecnickcom/tcpdf)
在vendor目錄下輸入命令:composer require tecnick.com/tcpdf;
引入 autoload.php - 自動加載類庫加載文件, 一般在入口index.php引入
控制器 :use ...., 實例化,開始調用

githup:

選擇項目的類庫的文件夾,下載(https://github.com/tecnickcom/TCPDF)
下載成功後,必須要手動引入類庫,例如:include(THINK_PATH. 'Library/vendor/TCPDF)
實例化:$tcPdf = new \TCPDF(); 調用...

方法介紹

 /*新建一個pdf文件:

   Orientation:orientation屬性用來設置文檔打印格式是“Portrait”還是“Landscape”。 Landscape爲橫式打印,Portrait爲縱向打印

   Unit:設置頁面的單位。pt:點爲單位,mm:毫米爲單位,cm:釐米爲單位,in:英尺爲單位

   Format:設置打印格式,一般設置爲A4

   Unicode:爲true,輸入的文本爲Unicode字符文本

   Encoding:設置編碼格式,默認爲utf-8

   Diskcache:爲true,通過使用文件系統的臨時緩存數據減少RAM的內存使用。 */

   $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT,true, 'UTF-8', false);

   //設置文件信息

   $pdf->SetCreator(PDF_CREATOR);

   $pdf->SetAuthor("jmcx");

   $pdf->SetTitle("pdf test");

   $pdf->SetSubject('TCPDF Tutorial');

   $pdf->SetKeywords('TCPDF, PDF, example, test, guide');

   //刪除預定義的打印 頁眉/頁尾

   $pdf->setPrintHeader(false);

   $pdf->setPrintFooter(false);

   //設置默認等寬字體

   $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

   /*設置頁面邊幅:

   Left:左邊幅

   Top:頂部邊幅

   Right:右邊幅

   Keepmargins:爲true時,覆蓋默認的PDF邊幅。 */

   $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP,PDF_MARGIN_RIGHT);

   /*設置單元格的邊距:

   Left:左邊距

   Top:頂部邊距

   Right:右邊距

   Bottom:底部邊距。*/

   $pdf->setCellPaddings(0, 0, 0, 0);

   //GetX獲得當前的橫座標,GetY獲得當前的縱座標。

// $pdf->GetX();

// $pdf->GetY();

   /*移動座標。SetX移動橫座標。 SetY,橫座標自動移動到左邊距的距離,然後移動縱座標。SetXY,移動橫座標跟縱座標:

   X:橫座標,可設爲$pdf->GetX()+數字

   Y:縱座標,可設爲$pdf->GetY()+數字

   Rtloff:true,左上角會一直作爲座標軸的原點

   Resetx:true,重設橫座標。 */

// pdf>SetX(pdf->SetX(x, $rtloff=false);

// pdf>SetY(pdf->SetY(y, $resetx=true, $rtloff=false);

// pdf>SetXY(pdf->SetXY(x, $y, $rtloff=false)

   /*設置線條的風格:

   Width:設置線條粗細

   Cap:設置線條的兩端形狀

   Join:設置線條連接的形狀

   Dash:設置虛線模式

   Color:設置線條顏色,一般設置爲黑色,如:array(0, 0, 0)。*/

   $pdf->SetLineStyle(array('width' => 0.2, 'cap' => 'butt', 'join' => 'miter', 'dash' => '0', 'color' => array(0, 0,0)));

   /*畫一條線:

   x1:線條起點x座標

   y1:線條起點y座標

   x2:線條終點x座標

   y2:線條終點y座標

   style:SetLineStyle的效果一樣

   */

// pdf>Line(pdf->Line(x1, $y1, $x2, $y2, $style=array());

   /*執行一個換行符,橫座標自動移動到左邊距的距離,縱座標換到下一行:

   H:設置下行跟上一行的距離,默認的話,高度爲最後一個單元格的高度

   Cell:true,添加左或右或上的間距到橫座標。 */

// pdf>Ln(pdf->Ln(h=’’, $cell=false);

   //設置自動分頁符

   $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

   //設置圖像比例因子

   $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

   //設置一些語言相關的字符串

// $pdf->setLanguageArray(“xx”);

   /*設置字體:

   字體類型(如helvetica(Helvetica)黑體,times (Times-Roman)羅馬字體)、風格(B粗體,I斜體,underline下劃線等)、字體大小 */

   $pdf->SetFont('times', 'I', 20);

   /*增加一個頁面:

   Orientation:orientation屬性用來設置文檔打印格式。 Landscape爲橫式打印,Portrait爲縱向打印。

   Format:設置此頁面的打印格式。

   Keepmargins:true,以當前的邊幅代替默認邊幅來重寫頁面邊幅。

   Tocpage:true,所添加的頁面將被用來顯示內容表。*/

   $pdf->AddPage();

   /*設置單行單元格:

   W:設置單元格的寬

   H:設置單元格的高

   Text:單元格文本

   Border:設置單元格的邊框。0,無邊框,1,一個框,L,左邊框,R,右邊框,B, 底邊框,T,頂邊框,LTRB指四個邊都顯示

   Ln:0,單元格後的內容插到表格右邊或左邊,1,單元格的下一行,2,在單元格下面

   Align:文本位置。L,左對齊,R,右對齊,C,居中,J,自動對齊

   Fill:填充。false,單元格的背景爲透明,true,單元格必需被填充

   Link:設置單元格文本的鏈接。*/

   $pdf->Cell(0, 10, 'test', 1, 1, 'C');

   /*設置多行單元格。注意跟Cell的參數位置有些差別,Cell是用來輸出單行文本的,MultiCell就能用來輸出多行文本

   W:設置多行單元格的寬

   H: 設置多行單元格的單行的高

   Text:文本

   Border:邊框

   Align:文本位置

   Fill:填充

   Ln:0,單元格後的內容插到表格右邊或左邊,1,單元格的下一行,2,在單元格下面

   X:設置多行單元格的行座標

   Y:設置多行單元格的縱座標

   Reseth:true,重新設置最後一行的高度

   Stretch:調整文本寬度適應單元格的寬度

   Ishtml:true,可以輸出html文本,有時很有用的

   Autopadding:true,自動調整文本與單元格之間的距離

   Maxh:設置單元格最大的高度

   Valign:設置文本在縱座標中的位置,T,偏上,M,居中,B,偏下

   Fillcell:自動調整文本字體大小來適應單元格大小。 */

// pdf>MultiCell(pdf->MultiCell(w, $h, $txt, $border=0, align=J,align='J',fill=false, $ln=1, $x=’’, $y=’’, $reseth=true, stretch=0,stretch=0,ishtml=false, $autopadding=true, $maxh=0, $valign=‘T’, $fitcell=false);

   // setCellHeightRatio設置單元格行高,可以引用此函數調整行與行的間距。SetLineWidth設置線條寬度。

// pdf>setCellHeightRatio(pdf->setCellHeightRatio(h);

// pdf>SetLineWidth(pdf->SetLineWidth(width);

   /*在PDF中,插入圖片,參數列表如下;

   File:圖片路徑。

   X:左上角或右上角的橫座標。

   Y:左上角或右上角的縱座標。

   W:設置圖片的寬度,爲空或爲0,則自動計算。

   H:設置圖片的高度,爲空或爲0,則自動計算。

   Type:圖片的格式,支持JPGE,PNG,BMP,GIF等,如果沒有值,則從文件的擴展名中自動找到文件的格式。

   Link:圖片鏈接。

   Align:圖片位置。

   Resize:true,調整圖片的大小來適應寬跟高;false,不調整圖片大小;2,強制調整。

   Dpi:以多少點每英寸來調整圖片大小。

   Palign:圖片位置,L,偏左,C,居中,R,偏右

   Imgmask:true,返回圖像對象。

   Border:邊框。

   Fitbox:調整適合大小。

   Hidden:true,隱藏圖片。

   Fitonpage:如果爲true,圖像調整爲不超過頁面尺寸。 */

   $pdf->Image('../img/test.png');

   /*輸出HTML文本:

   Html:html文本

   Ln:true,在文本的下一行插入新行

   Fill:填充。false,單元格的背景爲透明,true,單元格必需被填充

   Reseth:true,重新設置最後一行的高度

   Cell:true,就調整間距爲當前的間距

   Align:調整文本位置。 */

  $pdf->writeHTML("<div><label>hah<strong>aha</strong></label><br/></div>");

   /*用此函數可以設置可選邊框,背景顏色和HTML文本字符串來輸出單元格(矩形區域)

   W:設置單元格寬度。0,伸展到右邊幅的距離

   H:設置單元格最小的高度

   X:以左上角爲原點的橫座標

   Y:以左上角爲原點的縱座標

   Html:html文本

   Border:邊框

   Ln:0,單元格後的內容插到表格右邊或左邊,1,單元格的下一行,2,在單元格下面

   Fill:填充

   Reseth:true,重新設置最後一行的高度

   Align:文本的位置

   Autopadding:true,自動調整文本到邊框的距離。 */

   $pdf->writeHTMLCell();

   /*輸入PDF文檔 :

   Name:PDF保存的名字

   Dest:PDF輸出的方式。I,默認值,在瀏覽器中打開;D,點擊下載按鈕, PDF文件會被下載下來;F,文件會被保存在服務器中;S,PDF會以字符串形式輸出;E:PDF以郵件的附件輸出。 */

   $pdf->Output("test001.pdf", "F");
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章