2017-08-16 108 views
0

我已經在laravel項目中使用dompdf包創建了我的pdf。但是,當我想渲染其他語言(孟加拉語)而不是英語Dompdf包laravel中的其他語言支持

???????????????????????????? 

顯示。

<body style="font-family: 'AdorshoLipi', Arial, sans-serif !important;"> 

    <div style="border-style: solid; border-width: 2px; margin: 50px; padding: 10px;"> 
     <div align="center"> 
      <h2> 
       Anti-corruption commission hotline-106 
      </h2> 
     </div> 
     <div> 
      <p> Reference No : {{ $complain->call_ref_id }}</p> 
      {{-- <br> --}} 
      <p> Date : {{ $complain->created_at }}</p> 
      <p> Name : {{ $complain->name }}</p> 
      <p> Address : {{ $complain->address }}</p> 
      <p> Phone Number : {{ $complain->phone_number }}</p> 
      <p> Against : {{ $complain->against }}</p> 
      <p> Sector : {{ $complain->department }}</p> 
      <p style="font-family: 'AdorshoLipi', Arial, sans-serif !important;"> Type : {{ $complain->type }}</p> 
      <p> Complain Description : {{ $complain->complain_description }}</p> 
      <p> Amount : {{ $complain->amount }}</p> 
      <p> Status : {{ $complain->status }}</p> 


     </div> 

     <div style=" margin-left: 450px; width: 100px; "> 
      <hr> 
      <label>Signature</label> 
     </div> 

     <div class="panel-primary"> 

     </div> 

    </div> 


</body> 
+0

是否使用[laravel DOMPDF](https://github.com/barryvdh/laravel-dompdf)包中找到here? –

+0

是的,我正在使用laravel Dompdf。 –

+0

希望你包含你的字體文件並設置'@ font-face'? –

回答

-2

嘗試你的輸出使用UTF8解碼:

utf8_decode($var) 
+0

感謝您的回覆。但我無法理解答案。你能否詳細說明你的答案? –

+0

我有一個問題,有些字符不能顯示。一個例子:如果我沒有記錯的話,ä顯示爲星號。我用UTF-8來解決這個問題。 (https://en.wikipedia.org/wiki/UTF-8)。所以這就是爲什麼我建議使用「utf8_decode」(http://php.net/manual/en/function.utf8-decode.php)。 – Menno

+0

確保正確的編碼是重要的,但你真的不應該使用'utf8_decode'。它將您的文本重新編碼爲iso-8859-1,該編碼不支持的任何字符都會轉換爲問號。 – BrianS

0

爲了更好地使用像孟加拉不同的語言,你可以嘗試使用強積金。這個對於utf8是很好的。

+0

感謝您的回覆。我真的不想使用另一個軟件包,而且我對你的建議軟件包不是很熟悉。 –

0

您可以將支持與您的TrueType字體添加到laravel Dompdf package。只需按照以下步驟從命令行將TrueType字體加載到dompdf中即可。

有兩種基本的方法來使用的TrueType字體家庭,這個包:
1)使用load_font.php腳本
2)使用@字體面CSS規則在運行時
加載的字體

1)使用load_font.php腳本
load_font.php是運行使用命令行,所以你需要在命令行中運行該命令的腳本。您可以輕鬆地從Dompdf utils

拿到這個劇本一旦該實用程序添加,運行下面的命令命令到您的命令行界面,從您的DOMPDF安裝目錄中安裝的字體。

php load_font.php font_family /pathto/fontfile.ttf 

注: DOMPDF目前僅支持的TrueType字體。所以當查找字體時,請確保它以TrueType格式。

2)使用@font-face CSS規則加載在運行時
你只需要下面的風格腳本添加到您的網頁使用字體的TrueType字體。

@font-face { 
    font-family: 'font_family'; 
    font-style: normal; 
    font-weight: normal; 
    src: url(http://example.com/fonts/fontfile.ttf) format('truetype'); 
} 

一旦上面的字體系列加載,你可以用它喜歡:<div style="font-family: font_family, sans-serif;">yourtextinotherlanguage</div>

確保您的文檔指定使用UTF-8樣<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

更多信息可得

+0

@ Md.SukelAli:希望你從我的回答中得到一些東西? –

+0

感謝您的回答AddWeb解決方案私人有限公司 運行php命令後,我的結果是不同於平時的結果。 通常結果: 無法找到粗體文件。 無法找到斜體文件。 無法找到bold_italic的臉部文件。 將/home/fonts/firefly.ttf複製到/home/dompdf/lib/fonts/firefly.ttf ... 爲/home/dompdf/fonts/firefly.ttf生成.afm ... ? 完成 - 創建的字體文件。 我的結果: 複製SolaimanLipi_29-05-06.ttf存儲/字體/ SolaimanLipi_29-05-06.ttf ... 生成的Adobe字體規格存儲/字體/ SolaimanLipi_29-05-06 的路徑是不同的。 –