показать звезды (★) в mpdf - PullRequest
0 голосов
/ 11 июня 2018

Я, что, чтобы поместить некоторые звезды ★ (★) в PDF, используя MPDF, но это не работает

Это код:

<?php

require_once __DIR__ . '/vendor/autoload.php';

$mpdf = new \Mpdf\Mpdf();
$mpdf->allow_charset_conversion=true;
$mpdf->charset_in='UTF-8';

$html ="";

ob_start();

$obj = json_decode($myJSON,true);
foreach($obj as $data)
{
    if($data['llave'] == 'Autoritario')
    {
        for($i=0;$i<$data['stars'];$i++)
        { 
            echo "&#9733;"; 
        }
    }
}

$html = ob_get_contents();//get the content
ob_end_clean();//erase the output buffer
$mpdf->WriteHTML($html);
$mpdf->Output();
?>

Я пытался:

$mpdf->WriteHTML(utf8_encode($html));

и:

{ 
    echo utf8_encode("&#9733";)

но это, не работает, показывает мне:

enter image description here

1 Ответ

0 голосов
/ 11 июня 2018

Однажды я столкнулся с той же проблемой.Хитрость заключается в том, чтобы изменить шрифт по умолчанию на пользовательский шрифт, который поддерживает символ, который вы хотите напечатать.

Чтобы добавить пользовательский шрифт в MPDF, загрузите и скопируйте файл age-gothic.tff в папку ttfonts внутри папки mpdf.Ссылка для скачивания: https://www.wfonts.com/font/century-gothic

Измените шрифт по умолчанию в конфигурации MPDF.

$mpdf = new \Mpdf\Mpdf([
            'mode' => 'utf-8',
            'format' => 'A4',
            'default_font' => 'mycustomfont',
            'margin_left' => 15,
            'margin_right' => 10,
            'margin_top' => 16,
            'margin_bottom' => 10,
            'margin_header' => 10,
            'margin_footer' => 10
    ]);

Теперь добавьте свой собственный шрифт в fontVairables.php // mpdf / source / config / fontVariables.php

"mycustomfont" => [
    'R' => "century-gothic.ttf",
    'B' => "century-gothic-Bold.ttf",                   
 ],
...