php   dompdf包如何將HTML頁面導出中文無亂碼的PDF文檔

  1. 首先下載composer

               curl -sS https://getcomposer.org/installer | php

  2. 下載dompdf包

       php composer require dompdf/dompdf


  3. 下載load_font.php,此文件的功能是安裝中文字體

             1.git clone  https://github.com/dompdf/utils.git

             2. 複製 load_font.php到 dompdf目錄中,與lib 和 src 目錄同級。


  4. 下載中文字體,推薦下載 Droid Sans Fallback 字體,也可用雅黑字體,【雅黑字體會導致導出文檔過大】

                     下載鏈接【http://www.17ziti.com/info/71250.html】


  5.  安裝字體,將字體傳到服務器目錄下,運行load_font.php

           php load_font.php 'Droid'  /data/DroidSansFallback.ttf。

          運行後,若沒報錯,則在 vendor/dompdf/dompdf/lib/fonts/下生了                                    Droid.ttf,Droid.ufm    這兩個文件。


  6. 在PHP代碼中設置中文字體
    <?php
    require 'vendor/autoload.php';
    use Dompdf\Dompdf; 
    $dompdf = new Dompdf(); 
    $html=
    <<<HTML
     <html>
    <head>
    </head>
    <body>
    <!-- font-family:yahei;  china-->
    <div style="font-family:Droid; color: #f00;font-size: 14px"> 中文123 </div>
    </body>
    </html>
    HTML;
    $html = iconv('gb2312','utf-8',$html); 
    $dompdf->loadHtml($html); 
    $dompdf->setPaper('A4', 'landscape'); 
    $dompdf->render(); 
    $dompdf->stream();
  7. 注意 CSS 樣式中的 font-family 設置爲 之前運行load_font.php中設置的字體名。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章