如何在使用mpdf时以pdf格式打印泰米尔语字母?

时间:2015-04-12 13:01:21

标签: php pdf mpdf

我使用mpdf转换来自html的pdf转换。

我试图打印以下内容

$html = '<table  style = "width:300px;border-collapse: collapse;border: 1px solid black;">
            <tr style ="border: 1px solid black;">
                <td style = "border: 1px solid black;padding: 20px;text-align:center;">test</td>
                <td style = "border: 1px solid black;padding: 20px;text-align:center;">ராசி</td>
                <td style = "border: 1px solid black;padding: 20px;text-align:center;">ராசி</td>
                <td style = "border: 1px solid black;padding: 20px;text-align:center;">test</td>
            </tr>
</table>';
        $html = utf8_encode($html);
        $mpdf=new mPDF();
        $mpdf->WriteHTML($html);
        $mpdf->Output();

我能够阅读该文件。但泰米尔语文本无法打印。它在pdf文档中看起来不可读。 我想做什么来打印泰米尔语字母?我尝试编码html,但徒劳无功。

3 个答案:

答案 0 :(得分:1)

我是通过将tamil字体文件 ind_ta_1_001.ttf 包含到'ttfonts'文件夹然后将其调用为pdf更改了以下代码来实现的

    $mpdf=new mPDF('ta');
    $mpdf->WriteHTML($html);
    $mpdf->Output();

由于mpdf支持泰米尔语,因此工作正常。

答案 1 :(得分:0)

来自PHP文档:

  

utf8_encode - 将ISO-8859-1字符串编码为UTF-8

你拥有的是一个utf-8字符串。你不需要转换它。只需删除utf8_encode。

答案 2 :(得分:0)

这个解决方案可以帮助那些正在寻找使用从 mysql 数据库 100% 工作中获取的数据从 php 生成 pdf 报告的人。

<?php
    include('vendor/autoload.php');
    $mpdf = new \Mpdf\Mpdf(['mode' => 'ta-IN']); # for tamil country-india
    $conn = mysqli_connect("localhost","root","","matrimonial"); # my database
    $sql = "select * from rasi";
    $res = mysqli_query($conn,$sql);
    $html = "கல்யாணப்பரிசு திருமணத் தகவல் மையம் ";
    $mpdf->WriteHTML($html);

    while($row=mysqli_fetch_assoc($res)){
        $rasi = $row['rasiname'];   
        $mpdf->WriteHTML($rasi);
    }

    $mpdf->Output();
?>