У меня проблемы с кодировкой UTF-8 в библиотеке MPDF - PullRequest
0 голосов
/ 11 января 2020

Я создаю систему, которая автоматически генерирует контракт, проблема в том, что я не могу напечатать некоторые символы в PDF.

Сержио Авилла (мое имя, например, выглядит так ) -> Должно получиться так: Сержио Авилла.

Ниже приведен упрощенный код приложения.

<?php
require_once __DIR__ . '/vendor/autoload.php';
include 'config.php';
header("Content-type: text/html; charset=utf-8");

function file_get_contents_utf8($fn) {
    $content = file_get_contents($fn);
    return mb_convert_encoding($content, 'UTF-8', mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true));
}

$html = file_get_contents_utf8("contratos/".$contrato);

$mpdf = new \Mpdf\Mpdf();

$mpdf->WriteHTML($html);

$mpdf->Output();

?>

Буду признателен, если кто-нибудь сможет мне помочь. Я уже тестировал, $ html, если печать прямо на экране не дает проблем, все правильные символы, проблема в mpdf.

1 Ответ

0 голосов
/ 11 января 2020

В файле контракта html был набор символов = ..., метатег, я просто изменил его на charset = utf-8, и он заработал.

После: <meta http-equiv=Content-Type content="text/html; charset=utf-8">

До: <meta http-equiv=Content-Type content="text/html; charset=windows-1252">

...