整合營銷服務商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          手把手的教你用PHP將HTML生成PDF

          ompdf是一個可以將HTML生成PD并保留樣式效果的PHP第三方擴展。

          下面就一步步講解如何使用:

          一、通過composer安裝

          composer require dompdf/dompdf


          安裝過程

          二 、編寫測試代碼

          (1)引用autoload.php

          include 'vendor/autoload.php'; 

          (2)實例化Dompdf

          $dompdf=new \Dompdf\Dompdf();

          (3)加載HTML

          $dompdf->loadHtml($html); //$html 為HTML字符串

          (4)設置紙張和方向

          $dompdf->setPaper('A4', 'landscape'); //紙張大小和紙張方向

          (5)生成PDF并下載

           $dompdf->render();
          $dompdf->stream('數(shù)據(jù)字典.pdf');

          三、導出PDF測試,發(fā)現(xiàn)中文亂碼了


          導出PDF發(fā)現(xiàn)中文亂碼了

          四、解決中文亂了問題

          (1)下載支持中文的字體包放到根目錄下(和vendor目錄同級),這里演示使用的是阿里巴巴的普惠字體(字體格式是ttf的,小編原先下載使用的字體格式是otf格式的無效)

          (2)下載dompdf字體安裝工具解壓到根目錄(和vendor目錄同級)

          下載地址:https://github.com/dompdf/utils

          (3)在命令行(CMD定位到根目錄)下執(zhí)行命令

          php load_font.php "puhui" Alibaba-PuHuiTi-Light.ttf

          執(zhí)行成功后在路徑(vendor\dompdf\dompdf\lib\fonts)下就會出現(xiàn)剛才的字體

          (4)在樣式文件中指定使用剛才安裝的字體

          body{font-family:puhui;}

          (5)再次導出PDF測試成功


          亂碼問題解決

          . PHP魔法的起源

          PHP作為一種強大的編程語言,擁有著廣泛的應用領域。而在這個數(shù)字化時代,文章采集成為了一項重要的任務。那么,PHP又是如何實現(xiàn)文章采集的呢?讓我們揭開這個神秘面紗。

          2.文章采集的意義

          在信息爆炸的時代,獲取有價值的文章資源顯得尤為重要。而通過PHP編寫的文章采集代碼,可以幫助我們快速、高效地從互聯(lián)網(wǎng)上采集到我們需要的文章內(nèi)容。這不僅節(jié)省了時間和人力成本,還能夠提高工作效率。

          3. PHP文檔解析技術

          PHP文檔解析技術是實現(xiàn)文章采集的核心。通過使用各種解析函數(shù)和庫,我們可以將目標網(wǎng)頁中的HTML或XML結構進行解析,并提取出我們需要的數(shù)據(jù)。這項技術使得PHP能夠輕松應對各種網(wǎng)頁結構和數(shù)據(jù)格式,極大地提高了文章采集的靈活性。

          4.優(yōu)秀的文章采集工具

          除了自己編寫代碼,還有一些優(yōu)秀的文章采集工具可以幫助我們完成這項任務。比如,PHP Simple HTML DOM Parser和Goutte等工具,它們提供了方便易用的API和豐富的功能,使得我們能夠更加便捷地進行文章采集。

          5.注意事項與技巧

          在進行文章采集時,我們需要注意一些細節(jié)和技巧。首先,要選擇合適的目標網(wǎng)站,并了解其網(wǎng)頁結構和數(shù)據(jù)格式。其次,要設置合理的請求頻率和并發(fā)數(shù),以避免給目標網(wǎng)站帶來過大的壓力。此外,還要處理好異常情況和錯誤信息,確保采集過程的穩(wěn)定性和可靠性。

          6.遵守法律與道德

          在進行文章采集時,我們必須遵守相關的法律法規(guī)和道德規(guī)范。不得采集他人的知識產(chǎn)權內(nèi)容,并且要尊重原作者的權益。同時,在使用采集到的文章內(nèi)容時,要注明出處并遵守相關的版權規(guī)定。

          7. PHP魔法持續(xù)進化

          隨著互聯(lián)網(wǎng)技術的不斷發(fā)展,PHP文章采集代碼也在不斷進化。新的解析技術、優(yōu)秀的工具和更高效的算法不斷涌現(xiàn),使得文章采集變得更加智能化、自動化。PHP魔法的力量將繼續(xù)引領我們走向更廣闊的知識海洋。

          通過PHP編寫的文章采集代碼,讓我們能夠輕松獲取到海量的有價值文章資源。它不僅是一種工具,更是一種魔法,幫助我們探索知識的邊界。讓我們一起揭開這個神奇世界的面紗,感受PHP魔法的力量吧!

          日有網(wǎng)友希望有一篇用PHP生成PDF的文章教程,好的今天我們就講一講怎么樣用PHP將HTML生成PDF

          我們使用的開源類庫就是TCPDF

          GITHUB地址:

          https://github.com/tecnickcom/TCPDF

          composer安裝:

          composer require tecnickcom/tcpdf

          demo示例:

          https://tcpdf.org/examples/

          這里主要講的是講HTML生成PDF因為HTML格式絕大部分夠用了,其它個性化的功能大家看下官方的DEMO就行了比如生成圖表等

          下面說下具體使用方式:

          1.實例化TCPDF對象

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

          2.設置標題關鍵字等(步驟可以省略)

          $pdf->SetCreator(PDF_CREATOR);

          $pdf->SetAuthor('Nicola Asuni');

          $pdf->SetTitle('TCPDF演示');

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

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

          3.設置字體(這步很重要不然中文亂碼)

          $fontname = TCPDF_FONTS::addTTFfont('Droid Sans Fallback.ttf', 'TrueTypeUnicode', '', 32);

          $pdf->SetFont($fontname, '', 20);

          4.添加個頁面

          $pdf->AddPage();

          5.將HTML生成PDF

          $pdf->writeHTML($html);

          6.輸出(默認直接在瀏覽器顯示)

          $pdf->Output();

          $pdf->Output('123.pdf','D');//這個是下載,其他方式請?zhí)鎿Q參數(shù)

          7.生成后的效果

          鏈接列表等演示

          生成圖片演示

          表格演示

          最后總結:

          1.一定要設置字體,否則中文亂碼。最好使用文本的設置方法和字體。網(wǎng)上的設置字體的方法雖然能解決但是用pdfparser這個類讀取生成后的PDF內(nèi)容還是亂碼(讀取PDF內(nèi)容的方法在我另一篇文章中有說到)

          2.如果你設置了PDF的頭和腳 還需在設置一遍字體

          $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, 'PDF頭部標題', '代碼庸醫(yī)');

          $pdf->setHeaderFont(Array($fontname, '', PDF_FONT_SIZE_MAIN));


          主站蜘蛛池模板: 国产成人精品一区二区三区免费| 色综合视频一区二区三区44| 秋霞无码一区二区| 国产精华液一区二区区别大吗| 麻豆视频一区二区三区| 亚洲欧美日韩中文字幕在线一区| 一区二区中文字幕| 精品国产一区二区三区2021| 99无码人妻一区二区三区免费| 久久综合一区二区无码| 国产丝袜一区二区三区在线观看| 少妇激情av一区二区| 国产伦精品一区二区三区视频猫咪 | 久久精品一区二区国产| 久久精品无码一区二区无码 | 亚洲日本一区二区一本一道| 亚洲av乱码一区二区三区香蕉| 日本一区二区在线| 中文字幕Av一区乱码| 国产另类ts人妖一区二区三区| 美女福利视频一区二区| 国产产一区二区三区久久毛片国语| 中文激情在线一区二区| 国产免费一区二区三区在线观看| 天天躁日日躁狠狠躁一区| 亚洲综合在线一区二区三区| 久久青草精品一区二区三区| 中文字幕一区精品| 农村乱人伦一区二区| 一区二区三区四区视频在线| 国产主播福利一区二区| 久久人妻内射无码一区三区| 国产另类ts人妖一区二区三区| 日韩一区二区三区不卡视频| 无码免费一区二区三区免费播放| 狠狠做深爱婷婷综合一区| 国产在线观看一区二区三区四区| 中文乱码人妻系列一区二区| 一区二区三区在线观看| 中文字幕一区在线播放| 国产色欲AV一区二区三区|